2016-11-24 39 views
0

私はSFTPサーバで与えられましたIPアドレス|ユーザー名|パスワード。毎日、SFTPサーバーは、「2016_11_02_1.zip」の形式でいくつかのN個のzipを持つことがあります。私は、cURLを使用してファイルをダウンロードする方法を知っていた。Bash Toを使用SFTPサーバからファイルを再帰的にダウンロード

$curl -u xxxxx:xxxxx sftp://x.x.x.x/path/to/2016_11_02_1.zip 
$curl -u xxxxx:xxxxx sftp://x.x.x.x/path/to/2016_11_02_2.zip 

今、私はSFTPサーバ(2016_11_02_1.zip、2016_11_02_2.zip、2016_11_02_3.zip)で利用可能zipファイルをダウンロードするためのスクリプトを記述します。数時間後、SFTPサーバーに2016_11_02_4.zip ..... 2016_11_02_30.zip.

を追加することができます。既にダウンロードしたZIPファイル(2016_11_02_1.zip , 2016_11_02_2.zip , 2016_11_02_3.zip)をダウンロードせずにファイルをダウンロードする方法はありますか。

お願いします。

+1

ssh経由でサーバーにアクセスできますか?もしそうなら、私は 'rsync'を提案します。 – Cyrus

+0

@Cyrusはい、私はssh経由でアクセスできます。私はrsyncも見ていきます。 – Arun

答えて

1

まだダウンロード済みのファイルはありますか?その場合は、その名前のファイルがローカルディスクにすでに存在することを確認できます。

+0

はい以前にダウンロードしたファイルがあります。今、ローカルディスクとSFTPサーバーのファイルを比較する必要があります。共通のものがある場合は、それをスキップして、存在しないものをダウンロードしてください。 – Arun

+0

右の音。あなたは私の答えを正しいものとしてマークできますか? –

+0

これはまさにrsyncがより良い点を除いてあなたのために行うことです... – spinkus

1

SFTPが安全なFTPを意味するのであれば、SFTPはSSHの一部であるため、SSHサポート(> = 3.Xと思う)でrsyncを使うことができます。例:

rsync -av [email protected]:/path/to/`date +%Y`* 
関連する問題