私はbashでスクリプトを作成しています。SFTPを使用してリモートディレクトリにあるdddで始まるファイルの数をカウントする必要があります。各ファイルをダウンロードした後、リモートディレクトリにあるファイルの数とダウンロードされたファイルの数を比較することができます。一致するかどうかを確認してください。SFTPを使用してリモートディレクトリ内のファイル数をカウントする
echo ls -l | sftp "[email protected]$123.45.67.8:/home/user/datafolder/ddd*" | wc -l
作品以上のものを、私はこれを実行すると、それは私が望んでいない私のローカルフォルダにすべてのファイルを、ダウンロードします。
私はこのような何かをしていました。
ファイル数をカウントしてダウンロードするにはどうすればよいですか。私はコードの別の部分でそれらをダウンロードしたいと思います。
'FTP'はファイル転送プロトコルです。 あなたの探しているものが 'SSH'だと思います –
@ user3240704 SFTPはFTPのように[リモートディレクトリの一覧表示などの特定のコマンドを許可します](そして、http://www.tecmint.com/sftp-command-examples/) OPのために良い読書になるでしょう) – user2864740
それは、構文上OPsコード[正しい](http://stackoverflow.com/questions/25412497/sftp-return-number-of-files-in-remote-directory)です。しかし、FTP/SFTPは_ファイル転送プロトコルであるため、OPが回避しようとしている機能であるファイル_を転送することがあります。 SSHを使用すると問題が解決します。 –