Mac
 Computer >> コンピューター >  >> システム >> Mac

Macにwgetをインストールして使う方法を徹底解説!基本のコマンドから便利なオプションまで

Macにwgetをインストールして使う方法を徹底解説!基本のコマンドから便利なオプションまで

Web上のリソースをダウンロードする方法はたくさんあります。ブラウザを使うのが一般的ですが、wgetのようなコマンドラインツールを使えば、他の作業をしながらバックグラウンドでダウンロードを行うことも可能です。この記事では、Macでwgetをダウンロード・インストールし、実際に使いこなす方法を詳しく解説します。

wgetとは?何に使えるツールなのか

wgetは、指定したURLからリソースをダウンロードするためのオープンソースの非対話型コマンドラインユーティリティです。非対話型であることが最大の特徴で、ユーザーがログインしていなくても、バックグラウンドで動作させることができます。

このツールはGNUプロジェクトによって開発されており、特にインターネット接続が不安定な環境でも強力に機能するよう設計されています。つまり、回線状況があまり良くない場合でも、堅牢にダウンロード処理を続行できるのです。

wgetをインストールすれば、コマンドを実行してファイルの保存先を指定するだけでダウンロードが完了します。それでは、具体的な手順を見ていきましょう。

Macにwgetをインストールする方法

wgetをインストールする前に、まずパッケージマネージャーの準備が必要です。macOSにはwgetが標準搭載されていないため、Homebrew(Macで最も人気のあるパッケージマネージャー)を使ってダウンロード&インストールします。

ステップ1:Homebrewをダウンロードしてインストールする

Homebrewをインストールするには、まずターミナルウィンドウを開いて、以下のコマンドを実行します。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

このコマンドは、macOSにプリインストールされているRuby環境とともに提供されるファイルを、curlコマンドを使ってダウンロードする仕組みです。

Enterキーを押してコマンドを実行すると、インストーラーがこれから行われる処理の詳細を表示してくれます。

Macにwgetをインストールして使う方法を徹底解説!基本のコマンドから便利なオプションまで

内容を確認して同意すると、インストールが開始されます。

ステップ2:コマンドラインからwgetをインストールする

次に、Homebrewを使ってwgetをインストールします。再びターミナルで以下のコマンドを実行しましょう。

brew install wget
Macにwgetをインストールして使う方法を徹底解説!基本のコマンドから便利なオプションまで

インストーラーはリアルタイムで進行状況を表示してくれるので、基本的には何も操作する必要がありません。プロセスはシンプルかつ自動的に進みます。ただし、すでにHomebrewをインストール済みの場合は、事前にbrew updateを実行して、すべてのフォーミュラ(パッケージ定義)を最新の状態にしておきましょう。

ターミナルに新しいプロンプトが表示されれば準備完了です。早速wgetを使ってWebリソースをダウンロードしてみましょう。

wgetでWebリソースをダウンロードする方法

wgetを使ってURLからリモートリソースをダウンロードするには、以下の構文を使用します。

wget -O path/to/local.copy https://example.com/url/to/download.html

このコマンドにより、URLで指定したファイルが、自分のマシン上の指定した場所に保存されます。

Macにwgetをインストールして使う方法を徹底解説!基本のコマンドから便利なオプションまで

なお、-Oオプション(フラグ)を省略した場合は、現在の作業ディレクトリにファイルが保存されます。

Macにwgetをインストールして使う方法を徹底解説!基本のコマンドから便利なオプションまで

例えば、Webページを「ダウンロード」フォルダに保存したい場合は、次のように入力します。

wget -O /Users/[your-username]/Downloads/status.html https://www.w3.org/Status.html

-Oオプションを使わずに同じことをするには、wgetを実行する前にディレクトリを移動(cd downloads)しておく必要があります。

wget /Users/[your-username]/Downloads/status.html https://www.w3.org/Status.html

実行すると、ダウンロードの進行状況に関する詳細情報が表示されます。ただし、wgetは非常に高速なので、この情報はリアルタイムの更新というより、ダウンロード結果のサマリーのようなものだと考えてよいでしょう。

ディレクトリ全体を再帰的にダウンロードする方法

wgetでディレクトリツリー全体をダウンロードするには、-r--recursive)と-np--no-parent)の2つのオプションを使用します。

wget -e robots=off -r -np https://www.w3.org/History/19921103-hypertext/hypertext/

これにより、wgetは指定されたディレクトリ内のドキュメントに含まれるリンクをたどり、指定されたURLパス全体を再帰的にダウンロードします。

また、-e robots=offというコマンドにも注目してください。これはrobots.txtファイルの制限を無視する設定です。一般的に、ダウンロードが途中で打ち切られるのを防ぐために、robots.txtを無効化しておくのが良いとされています。

wgetの便利な追加オプション

wgetは非常に柔軟なツールで、数多くの追加オプションが用意されています。ダウンロードに特別な要件がある場合にとても役立ちます。ここでは、「ダウンロードプロセスの制御」と「ログの作成」の2つの観点から、主要なオプションを紹介します。

ダウンロードの挙動を制御するオプション

ダウンロードプロセスを細かく設定できるオプションは多数あります。その中でも特に有用なものをいくつか紹介します。

  • wget -X /absolute/path/to/directory:リモートサーバー上の特定のディレクトリをダウンロード対象から除外します。
  • wget -nH:「ホスト名」のディレクトリを作成せずにスキップします。つまり、メインのドメイン名部分を省略します。例えば、前述の例ではwww.w3.orgフォルダをスキップし、Historyディレクトリから保存を開始します。
  • wget --cut-dirs=#:URL内の指定した階層数分のディレクトリをスキップしてからダウンロードを開始します。例えば、-nH --cut-dirs=1を組み合わせると、「ftp.xemacs.org/pub/xemacs/」というパスが単に「/xemacs/」として扱われ、ローカルに作成される空の親ディレクトリの数を減らせます。
  • wget -R index.htmlwget --reject index.html:指定したファイル名に一致するファイルをスキップします。この例ではすべてのindexファイルが除外されます。アスタリスク(*)はワイルドカードとして機能し、例えば「*.png」を指定すればPNG拡張子のファイルをすべて除外できます。
  • wget -i file:入力ファイルからダウンロード対象のURLを読み込みます。この入力ファイルはHTML形式である必要があり、そうでない場合は--force-htmlオプションを使ってHTMLとして解析させます。
  • wget -ncwget --no-clobber:保存先にすでに存在するファイルを上書きしません。
  • wget -cwget --continue:途中までダウンロード済みのファイルの続きからダウンロードを再開します。
  • wget -t 10:ダウンロードに失敗しても、最大10回まで再試行します。

wgetの機能はダウンロードの制御だけにとどまりません。ログを作成して後から参照することもできます。

ログ出力のレベルを調整するオプション

以下のオプションを使うと、wget使用時に受け取る出力をある程度コントロールできます。

  • wget -d:デバッグ出力を有効にします。
  • wget -o path/to/log.txt:標準出力にログを表示する代わりに、指定した場所へログを出力します。
  • wget -q:エラーメッセージを含む、wgetのすべての出力をオフにします。
  • wget -v:wgetのデフォルトである詳細出力を明示的に有効にします。
  • wget --no-verbose:通常のログメッセージをオフにしますが、エラーメッセージは表示します。

ダウンロード中に何が起きているか把握したい場面は多いため、これらのオプションを頻繁に使うことは少ないかもしれません。それでも、大量のファイルを一括ダウンロードする際に問題発生時に素早く対処したい場合や、逆に出力を最小限に抑えたい場合には、ログの活用や出力の抑制は有効な手段となります。

まとめ

ブラウザやGUIツールを使ってもWebページやその他のリソースはダウンロードできますが、コマンドラインを使えば時間を大幅に節約できます。wgetのようなツールはブラウザよりもはるかに強力で、動作も軽快です。wgetの全機能について詳しく知りたい方は、GNUの公式manページを参照してみてください。

もしwgetがうまく動作しない場合は、Wi-Fi接続に問題がないか診断してみるのも良いでしょう。あなたはMacでwgetを使ってWebリソースをダウンロードしてみたいと思いますか?ぜひコメント欄で感想をシェアしてください!

  1. MacでAirDropをオンにする方法!ファイル共有を快適にする使い方ガイド

    MacでAirDropをオンにして、手間なく素早くファイルを共有したいとお考えですか?この記事では、その方法を詳しく解説します。 テクノロジーとイノベーションの進化のおかげで、AirDropを使えば2台のデバイス間でワイヤレスにファイルの送受信が簡単に行えます。まるで魔法のように機能しますよね。AirDropは2011年に登場して以来、写真、動画、ウェブサイト、位置情報など、あらゆるデータの共有を手軽なものにしました。iPhone、iPad、MacなどのAppleデバイス間で、わずか数秒でデータをやり取りできます。 Bluetoothやその他のデータ共有手段と比較すると、AirDropは近く

  2. iOS 16のダウンロードとインストール方法を徹底解説【対応機種一覧つき】

    Appleの年次(しかも無料の)ソフトウェアアップデートが、iPhoneに数々の新機能をもたらします。数か月にわたるベータテストを経て、待望の大型アップデートがついにダウンロード可能になりました。この記事では、iOS 16の入手方法と注意点をご紹介します。アップデート内容の詳細については、「iOS 16新機能ガイド」もあわせてご覧ください。自分のiPhoneはiOS 16に対応している?おそらく対応しています。ただし、iOS 16のリリースに伴い、初代iPhone SE、iPhone 6s、iPhone 7のサポートは打ち切られました。以下がアップデート対象モデルの一覧です。なお、iPhone