web-dev-qa-db-ja.com

FTP経由でwgetを使用して最近変更されたファイルのみをダウンロードする

FTPサーバーからwgetを使用して再帰的にフェッチする場合、特定の日付以降に変更されたファイルのみをダウンロードするにはどうすればよいですか?

ユースケースでは、毎晩複数のサーバーと同期する必要がありますが、必要なのは数日前のデータのみです。 --mirrorフラグで十分ですが、残りのデータの同期(1回でも)が永久にかかる場合を除きます。

3
Peter Woo

wgetは一度ミラーリングでき、その後は--timestampフラグが付いた後のアイテムのみを取得できます。 infoページを読んで、適切な説明があり、これによって目的の動作が得られるかどうかを確認することをお勧めします。

2
Danny Staple

いいえ、wgetを介しているかどうかに関係なく、すでに一度同期していない限り、wgetではサポートされていません(その場合は、--timestampを参照してください)。

試すことができるいくつかの回避策は次のとおりです。

  • ファイルの名前またはパスに、ファイルの変更時刻だけでなく日付が含まれている場合は、正規表現/ディレクトリを使用して古いファイルを除外できる場合があります。
  • wget以外のものを使用してください。これは、専用スクリプトの良い候補のようです。一度にファイルにwgetを使用することはできます。また、私が使用したことのないwpullもチェックしてみてください。ただし、ページをダウンロードするかどうかを決定するスクリプトを使用したwgetに似ていることは理解しています。
  • FTPに加えてHTTPダウンロードオプションがある場合は、特定の日付以降に変更された場合にのみファイルをダウンロードするカスタムHTTPキャッシュディレクティブヘッダーを送信できる場合があります。
0
Zachary Vance