web-dev-qa-db-ja.com

Linuxコマンドラインツールを使用して失敗したダウンロードを再開する

Linuxコマンドラインツールを使用して、部分的にダウンロードされたファイルを再開するにはどうすればよいですか?

大きなファイルを部分的にダウンロードしました。つまり、停電のために900 MBのうち400 MBでしたが、もう一度ダウンロードを開始すると、最初から再開します。 400 MB自体から開始するにはどうすればよいですか?

38
amolveer

指定しなかったため、wgetを使用してファイルをダウンロードしていると想定しています。この場合は、-cオプション(例:wget -c <URL>)。

使用するプロトコルがftpの場合(URLはftp://...)リモートサーバーが、ダウンロードの再開をサポートしていない古い/古代のftpデーモンを使用している可能性があります(とにかく、新しいftpデーモンが10年以上サポートしているため、これは小さなチャンスです)。ただし、これが当てはまる場合は、運が悪い場合があります。一方、使用されているプロトコルがhttpの場合、問題はありません。 (更新:他の専門家によると(以下のコメントのGillesを含む)、httpの使用中に再開することもサーバーサポートの対象となるため、これはftpとhttpの両方に適用されます)。

幸運を。

55
Marcelo

私は元の質問の意味を知っています、そして答えはではありませんwget -c ...

シナリオは次のように説明できます。

# Start mirroring a site
wget -m http://...
# 400MB later wget died or interrupted,
# don't know where it left off, don't care,
# just want to get the remaining 100MB without getting the first 400MB again
wget -nc -r -l inf --no-remove-listing http://...

オプション「-r -l inf --no-remove-listing」は、-Nパラメーターなしの-mと同等です。 -ncパラメータを追加すると、最初の400MBがすでにハードドライブに保存されていません。

0
Michael Chen