
私たちの部門では、Kaspersky Anti-Virus を導入しています。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を使用してもう1つ変更を加えました。
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の作者です)