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


37

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

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


5
最初にファイルをダウンロードするためにどのコマンドラインを使用しましたか?
アントン14年

3
コメントには答えず、不完全な質問を更新してください
アントン14年

1
を使用curlしている場合は、manページで-Cオプションを検索する必要があります。
HalosGhost

回答:


53

あなたが指定しなかったので、私はあなたがwgetファイルをダウンロードするために使用していると仮定しています。その場合は、-cオプション(などwget -c <URL>)で使用してみてください。

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

がんばろう。


5
HTTPダウンロードは、サーバーがサポートしている場合にのみ再開できます。これはFTPサーバーよりもまれです。
ジル「SO-悪であるのをやめる」14年

ジルに感謝します。httpの使用中に再開することで良い経験しかありませんでしたが、おそらくあなたは正しいです。私は幸運です。私の答えを更新します。
マルセロ14年

wget -c http:...私が試した3台または4台のサーバーで動作しました。
ボブスタイン

神のご加護を!
学習者

3
@Gilles:実際、これは〜2010より新しいサーバーからの静的コンテンツでの一般的なオプションです(言い換えると、ほとんどのサーバーはデフォルトで静的ファイルの範囲要求を許可します)。動的に生成されたデータの場合、これは実際にまれです。
Piskvor

0

私は元の質問の意味を知っていて、答えは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を保存することを避けます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.