Linux / コマンド / wget - URLからファイルをダウンロード
wgetは、HTTP・HTTPS・FTPなどのURLからファイルをダウンロードするGNUのツールです。実行したコンピューターへファイルを保存し、中断した取得を再開する用途にも使えます。
基本的にリモートファイル名を使用して現在のディレクトリに保存します。-Oは希望の出力ファイルを指定し、-cは中断されたダウンロードを再開します。再帰ダウンロード機能もありますが、多くのページをリクエストする可能性があるため、事前に範囲とサイトポリシーを確認する必要があります。
基本的な文法
wget [オプション] URL
インストールされている実装とオプションは、配布版によって異なる場合があります。man wgetで現在のシステムの説明を確認してください。
使用例
単一ファイルのダウンロード
既定ではURLに基づく名前で現在のディレクトリへ保存します。このようにURLが/で終わる場合、通常の既定名はindex.htmlです。既定の保存方法で同名ファイルがあると、.1などの番号を付けて別名にする場合があります。
wget https://example.com/
ファイル名の指定
-Oは出力先を指定します。既存ファイルは取得開始時に切り詰められ、失敗しても元の内容が残るとは限りません。未使用の保存先を選ぶか、必要なファイルを先に退避します。
wget -O example.html https://example.com/
中断されたファイルの再開
例のURLは書式を示すダミーなので、配布者が公開した実在するダウンロードURLへ置き換えます。HTTPで途中から取得するには、サーバーの範囲リクエスト対応が必要です。対応しない場合は最初から取得し直して既存ファイルを上書きすることがあるため、手元のファイルも確認してください。
wget -c https://example.com/archive.tar.gz
ダウンロードの後、何を確認しますか?
wget -Oは受け取った内容を指定したファイル名で保存します。サーバーとネットワークの状態に応じて進行状況・HTTPステータスメッセージが標準エラーに表示されることがあります。
wget -O example.html https://example.com &&
ls -lh example.html
&&により、取得に成功した場合だけ2番目のlsを実行します。名前とサイズを確認できますが、内容は取得時点で変わるため、固定のバイト数とは限りません。ファイルがあるだけでは、完全な取得や内容の正しさを証明できません。
ダウンロード成功メッセージだけでファイルの真偽は保証されません。公式配布ファイルであれば、信頼できる経路で得た提供者のチェックサムや署名を検証してください。Ubuntu ISOを例にしたチェックサムと電子署名の検証では、両者の役割と確認手順を説明しています。同じ名前で再実行すると、-Oが既存のファイルを上書きする可能性があるため、保存先パスを先に確認します。
主なオプションと形式
| オプション・形式 | 説明 |
|---|---|
-O ファイル |
ダウンロード結果を指定のファイルに保存します。 |
-P ディレクトリ |
保存ディレクトリを指定します。 |
-c |
可能であれば、中断されたダウンロードを再開します。 |
-q |
通常のログ出力を抑制します。 |
--spider |
本文を保存せずにURLへアクセス可能性を確認します。 |
-r |
再帰的にリンクされたリソースを取得します。 |
使用する際の注意点
-Oは指定ファイルを上書きする可能性があるため、既存のデータを確認してください。-cを使用する際、サーバーのファイルが変更されていると、続きから取得した結果が破損する可能性があるため、チェックサムの検証が重要です。大規模な-r作業はサーバーに負荷を与える可能性があるため、権限と範囲を確認してください。
よくある質問
wget -cを使えば常に安全に続きから取得できますか?
いいえ。サーバーの範囲リクエストのサポート状況やリモートファイルの変更状況によります。完成ファイルのチェックサムを確認してください。
公式ドキュメント
オプションの正確な動作や実装ごとの差異は、wget関連公式ドキュメントで確認できます。




