Windows 7でDOSコマンドFTPを使用する場合、このFTPコマンドを使用して、リモートディレクトリのすべてのファイルを再帰的に一覧表示できます。
ftp> ls -R
Ls -Rの出力をローカルファイルに取得できません。FTPは構文について文句を言い続けます。
ftp> ls -R . save.txt
usage: ls remote-directory local-file
誰かが理由を説明できますか、そして私が望んだ結果を得る方法はありますか?
インタラクティブFTPシェルに入ると、私が知る限り、出力をキャプチャできません。
ただし、ftpコマンドにコマンドをパイプするか、コマンドでファイルを指定することができます(ユーザー名/パスワードの指定など、複数のコマンドが必要な場合は必須)。
次に、stdをファイルにリダイレクトします。
このような:
echo ls -R | ftp yourHostname > save.txt
または、すべてのコマンド(mycommands.txtなど)をテキストファイルに配置して、
ftp -s:mycommands.txt > save.txt
mycommmands.txtは次のようになります
user yourName yourPassword
open yourHostname
cd someDirectory
ls -R
(2つ目の例を現在テストできなかったため、機能しない場合はお知らせください)
コマンドラインを介して単純なftpを使用していると仮定して、dirコマンドを-Rlオプション付きで使用して再帰的に検索し、それをファイルにコピーしてから、grep、find、またはOSでサポートされている方法でファイルを検索します。
ftp> dir -Rl education.txt
output to local-file: education.txt? y
227 Entering Passive Mode (9,62,119,15,138,239)
150 Opening ASCII mode data connection for file list
226 Transfer complete
ftp> dir * Sample.txt
これでうまくいきました。