
wgetを使用して大きなファイル(4.5 GB)をダウンロードしようとしています。私のOSはUbuntu 18.04 LTSです。
それで、私は何をしたのでしょうか? まず、ファイルをダウンロードしたいフォルダーに移動しました。次に、次のコマンドを使用しました。
wget http://robotics.ethz.ch/~asl-datasets/iros_2017_voxblox/data.bag
これを何度も試してみましたが、さまざまなポイントで止まってしまいます (80 MB のときもあれば、3.9 GB のときもあり、その間のすべてです)。
少しグーグルで調べたところ、オプション -c を指定すると、中断したところからダウンロードを再開しようとすることがわかりました。そこで、次のコマンドを実行しました。
wget -c http://robotics.ethz.ch/~asl-datasets/iros_2017_voxblox/data.bag
そして私は次のような応答を受け取ります:
ファイルはすでに完全に取得されているため、何もする必要はありません。
ファイルは完全にダウンロードされていません。
私に何ができるのか何かアイデアはありますか?
追伸:私はネットワークに関しては初心者であり、http プロトコル (またはほとんどのプロトコル) がどのように機能するかについてはまったく知らないことを覚えておいてください。
答え1
出力をファイルに記録し、停止したときにエラーを探すと便利な場合があります。以下は、そのためのコマンドです。
wget -ov ./log1.txt -- http://robotics.ethz.ch/~asl-datasets/iros_2017_voxblox/data.bag
ログ ファイルは、コマンドを実行しているディレクトリと同じディレクトリにあります。
注意:wget -c [url]
部分的にダウンロードされたファイルがあるのと同じディレクトリから実行した場合にのみ機能します。
また、別のコマンドcurl
を使用することもできます。以下はコマンドです。
curl http://robotics.ethz.ch/~asl-datasets/iros_2017_voxblox/data.bag --output data.bag
curl
注意: フラグなしではここでは 使用しないでください--output
。data.bag の内容がわからないため、ターミナル セッションが壊れる可能性があります。
[更新]: ダウンロードしようとしたときの wget のログ: https://pasteboard.co/Hy4pNtE.png