前提
- Windows 11
- シェル: Git Bash
とりあえず下記手順に従ってやればOK
1: Wget for Windows にアクセスする
2: ここをクリック
3: 待つ
何か英語だらけのサイトでビビるけど、 赤枠のところのカウントダウンが終わったら勝手にインストーラーのダウンロードが始まります。
4: ダウンロードされたexeファイルを実行する
こいつがインストーラーです。ダブルクリックなどで開きましょう。
ひたすら次へ進みましょう
5: 環境変数にPathを追加する
※インストーラーが自動でパスを通してくれないので手動で追加します。
Windowsボタン押して「システム環境変数」と打ち込んでメニュー出す。
新規ボタンを押して C:\Program Files (x86)\GnuWin32\bin
を書き込んで、OK。
OK押す。
OK押す。
(ここまでちゃんと終わらせる)
6: Git Bashでwgetが使えるのを確認する
※すでに起動済みのGit Bashにはパスが反映されてないので、新しくGit Bashを起動する。
wget --version
と打ち込む。
wget google.com
と打ち込む。
今いるフォルダにindex.html
が生成されてればwget成功。
補足: 興味のある人向けのコラム
補足1: Powershellのwgetコマンドは別物
Powershellで wget
コマンドを実行すると、上記のインストール手順を踏んでなくても、なんかコマンドが使える。
だがこれは罠。
Powershellのwgetコマンドは、 Invoke-WebRequest
というPowershellコマンドの単なるエイリアス。
本来の wget
コマンドのオプションとかは使えないし、動作も異なるので注意。
参考: Invoke-WebRequest (Microsoft.PowerShell.Utility) - PowerShell | Microsoft Learn
補足2: ユーザー環境変数とシステム環境変数の違い
特に問題がないなら、ユーザー環境変数のPathに追記するのが安全。
ユーザー環境変数のPathはログイン中のユーザーでだけ有効。
システム環境変数の場合は、ユーザーまたいでもパスが通る。
ただ、システム環境変数はPath以外にも色々と、システムの深い部分の設定に関わる部分だったりするから、間違っていじると壊れたりするので注意。
基本的にユーザー環境変数だけいじるようにするのが無難。
参考: 「システム環境変数」と「ユーザ環境変数」の違い|「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典
補足3: そもそもなんでWindowsに最初からwgetが入ってないのか
OSの設計思想が違うから。
WindowsはもともとDOSというOSから始まった。
一方でUNIXというOSも別で作られていた。
そこにGNUっていうプロジェクトが始まって、UNIX互換のOSをオープンソースで作り出した。
GNUプロジェクトの一環として、wgetというツールが作られた。
だからそもそも、Windowsのシステム向けにwgetはつくられてない。
MinGWは、GNUのwgetとかのソフトウェアをWindowsで使えるようにするもの。
ほんで、Git Bashは、MSYS2っていうMinGWを改良したBashシェルで、なおかつGitに特化した色んなツールが最初から入ってる。
多分Git Bashを最初にWindowsに入れるときに、いろんなオプションの選択があるんだけど、そこで選択してないとMinGW系のツールが最初から入ってない状態になる。
だから、あとからMinGWのwgetを入れる必要があった。
という話でした。
補足4: WSL使えばいいじゃん
それな。WSLのシェル開いたら最初からwget使えたわ・・・。