如何设置 vim 以进行被动 FTP

如何设置 vim 以进行被动 FTP

我们部门正在部署卡巴斯基反病毒软件。由于安装在我的 Windows 7 工作站上,主动 FTP 被自动禁用。

我修改了 _vimrc 如下:

let g:netrw_cygwin = 0
let g:netrw_scp_cmd = 
"\"C:\\Windows\\system32\\ftp.exe -s:C:\\Users\\Cnorton.Arlington1\\vim_ftp.txt "

vim_ftp.txt 包含以下内容:

quote PASV

此后,我仍然收到此错误:

PORT/EPRT (Active Mode/Extended Active Mode) is not supported. Use PASV/EPSV instead of this

我该如何配置 ftp 以使用被动,这样我就不会收到此错误?

顺便说一句,我有版本 7 vim (gvim),但这是测试版,运行在 CentOS 上。该系统与我试图从 Windows 系统访问的远程系统相同。该系统上的 ftp 命令完成时没有错误。我不知道是不是因为它是同一主机上的 ftp 命令。

编辑:

好的。我明白不要使用默认的 Windows ftp.exe。因此,这就是我尝试配置 VanDyke 的 SecureFx 命令行版本(称为 sfxcl)的方式:

我使用 sfxcl 做了一个修改,

let g:netrw_cygwin = 0
let g:netrw_scp_cmd = "\"C:\\Program Files\\VanDyke Software\\Clients\\sfxcl.exe\" "

它在命令行上可以工作,但在 Vim 中不行。我收到了相同的活动消息,所以我相信我在 Vim 中搞砸了一些东西。我就是搞不清楚那是什么。

答案1

Windows FTP 命令行客户端 ( ftp.exe) 在任何版本的 Windows 上都不支持被动模式。由于无处不在的防火墙和 NAT,它现在变得毫无用处。

使用quote pasv不会有帮助。它只会切换服务器进入被动模式,但不是客户端


请使用任何其他 Windows FTP 命令行客户端。大多数其他客户端都支持被动模式。

例如,WinSCP 默认为被动模式,并且有一个可用于转换的指南Windows FTP 脚本到 WinSCP 脚本

如果您向我们展示其内容,我们可以帮助您vim_ftp.txt

(我是 WinSCP 的作者)

相关内容