it-swarm-ja.com

wgetで強制的に再ダウンロードする方法は?

同じ名前のファイルがすでに存在するのにwgetが再ダウンロードされないのは残念でした。

Linuxで最初にファイルを削除せずに彼に再ダウンロードを強制するオプションはありますか?

5
asksuperuser
wget -O - $url >/path/to-file

または、ミラーリングしている場合は、-cフラグを使用できます。これにより、ファイルは「継続」されますが、サーバーがwgetに指示しているサイズになっているため、最初から「継続」されます。

5
amphetamachine

これは、コマンドラインでwgetを指定したオプションに大きく依存します。私のシステムのデフォルトの動作は再ダウンロードですが、ファイル名に番号を追加して別のものにします。

これが--no-clobberman wgetオプションの説明です(wget 1.11.4の場合)-他のオプション、特に-r-pとの相互作用に注意してください。 (エンファシスマイン。)

-nc
-クローバーなし
ファイルが同じディレクトリに複数回ダウンロードされた場合、Wgetの動作は-ncを含むいくつかのオプションに依存します。場合によっては、ダウンロードを繰り返すと、ローカルファイルが上書きまたは上書きされます。それ以外の場合は保存されます。

-N、-nc、-r、またはpを指定せずにWgetを実行する場合、同じディレクトリに同じファイルをダウンロードすると、ファイルの元のコピーが保持され、2番目のコピーの名前はfile.1になります。 =そのファイルが再度ダウンロードされると、3番目のコピーにはfile.2という名前が付けられます。 -ncを指定すると、この動作は抑制され、Wgetはファイルの新しいコピーのダウンロードを拒否します。したがって、このモードでは「「no-clobber」」は実際には誤った名称です---防止されるのはクロバリングではなく(数値のサフィックスがすでにクロバリングを防止しているため)、複数バージョンの保存が防止されます。

-rまたは-pを指定してWgetを実行し、-Nまたは-ncを指定せずにファイルを再ダウンロードすると、新しいコピーが古いコピーを上書きするだけです。-ncを追加すると、この動作が防止され、代わりに元のコピーが作成されます。保存するバージョンと、サーバー上の新しいコピーは無視します。

-rまたは-pの有無にかかわらず、-Nを指定してWgetを実行する場合、ファイルの新しいコピーをダウンロードするかどうかの決定は、ファイルのローカルおよびリモートのタイムスタンプとサイズによって異なります。 -ncは、-Nと同時に指定することはできません。

-ncを指定すると、サフィックスが.htmlまたは.htmのファイルがローカルディスクからロードされ、Webから取得されたかのように解析されることに注意してください。

2
quack quixote