4.

wget http通信によるファイルダウンロード

編集

wget は、HTTP / HTTPS / FTP 経由でファイルをダウンロードするための Linux コマンドです。非対話型 (バックグラウンド/スクリプト向き) で動作し、レジューム・再帰取得・ミラーリングなど豊富な機能を備えています。

基本構文

wget [オプション] ファイルのURL

たとえば、シンプルにファイルを取得する場合は次のように実行します。

wget https://example.com/archive.tar.gz

主なオプション

オプション用途
-O ファイル名保存先のファイル名を指定 (URL末尾と異なる名前で保存)
-P ディレクトリ保存先ディレクトリを指定
-c中断したダウンロードをレジューム (続きから)
-q静かに実行 (進行表示を抑制)
-nv必要最小限の出力
-bバックグラウンド実行 (wget-log にログ)
-Nタイムスタンプ比較。新しい場合のみ再取得
-r再帰的に取得
-l N再帰の深さを N に制限
-mミラー (-r -N -l inf --no-remove-listing 相当)
-np親ディレクトリへ遡らない
-A "*.pdf,*.zip"取得対象を拡張子で絞る
-i ファイルURL リストを読み込んで一括取得
--user-agent="..."User-Agent を変更
--header="名前: 値"任意ヘッダ付与
--limit-rate=200k帯域制限
--tries=N再試行回数
--no-check-certificateTLS 証明書検証を無効化 (検証目的のみ)
--user / --passwordBasic 認証

よく使う実例

# 名前を変えて保存
wget -O myapp.tar.gz https://example.com/app/v1.tar.gz

# 続きから再開
wget -c https://example.com/big.iso

# サイトを丸ごとローカルへミラー
wget -m -np -k -E https://docs.example.com/

# URLリストを一括ダウンロード
wget -i urls.txt -P ./downloads

# Basic 認証付き
wget --user=u --password=p https://example.com/private/file.zip

# 帯域制限 (200KB/s)
wget --limit-rate=200k https://example.com/big.bin

wget と curl の使い分け

項目wgetcurl
得意分野ファイルダウンロード・再帰取得・ミラーHTTP メソッドや任意リクエスト全般
HTTP メソッドGET 中心GET / POST / PUT / PATCH / DELETE 等
レジューム-c で簡単-C - で対応
標準搭載多くのディストロで標準同じく標準
本文表示ファイルに保存標準出力に出してパイプ可能 (-o で保存)

注意点

  • 大量ファイルの再帰取得はサーバ負荷になる。--wait--limit-rate でマナーを守る
  • robots.txt を尊重するのが既定。意図的に無視するなら -e robots=off
  • SSL 証明書エラー--no-check-certificate で握りつぶさない。原因 (期限切れ・自己署名・中間証明書欠落) を確認
  • シンボリックリンク/パス遡上に注意 (URL のクエリパラメータでファイル名が衝突する等)
  • Windows でも wget 単体実行や Git for Windows / WSL 経由で利用可能

関連

編集
Post Share
子ページ

子ページはありません

同階層のページ
  1. ls ファイル/ディレクトリ一覧表示
  2. sudo ユーザー指定
  3. cron/crontab ジョブの自動実行と登録方法
  4. wget http通信によるファイルダウンロード
  5. rm ファイル/ディレクトリ削除
  6. pwd カレントディレクトリの表示
  7. cd ディレクトリの移動
  8. ./configure
  9. make
  10. make install
  11. unzip ファイルの解凍
  12. mv ファイル/ディレクトリの移動および名称変更
  13. mkdir ディレクトリの作成
  14. touch 空ファイルの新規作成
  15. vi テキストディタの使用
  16. find ファイル/ディレクトリ検索
  17. grep 文字列の検索
  18. tail ファイルの末尾表示
  19. curl HTTP通信によるリクエスト
  20. nslookup ドメインのIP解決
  21. apt update パッケージリストの情報を更新
  22. apt upgrade パッケージの更新
  23. ln リンク/ショートカットの作成と削除
  24. rsync ファイル/ディレクトリの同期
  25. ssh リモートとの暗号化通信
  26. scp sshを利用したファイルのコピー
  27. unzip zip ファイルを解凍する
  28. cp ファイル/ディレクトリのコピー
  29. diffファイルの差分抽出
  30. fdisk ハードディスクに対する操作
  31. lsblk デバイスをツリー状で表示する
  32. kill プロセスを終了させる
  33. zip ファイルやディレクトリをzip形式に圧縮する
  34. host ドメインからIPアドレスを確認
  35. chmod 権限の変更
  36. ip IPアドレスの確認
  37. chown ファイル/ディレクトリ所有者の変更
  38. chgrp ファイル/ディレクトリのグループ情報の変更
  39. nohupと'&' プログラムのバックグラウンド実行(ssh接続時)
  40. lsof 開いているポート番号の確認
  41. tar ファイルの圧縮と解凍
  42. file ファイルの種類を表示
  43. cat ファイルの中身を表示
  44. head ファイルの先頭部分を表示
  45. wc 行数/単語数/文字数を確認
  46. shutdown システムのシャットダウンと再起動
  47. ps プロセスの確認
  48. which コマンドの絶対パスを調べる
  49. yum RedHat系ディストリビューションの管理
  50. mount ファイルシステムのマウント
  51. 特定フォルダ以下の特定拡張子のファイルを再帰的に削除する方法
  52. 特定のフォルダとそのサブフォルダ内にある特定のファイル名のファイルを再帰的に削除