10 年くらい前になりますが、Windows で wget を使った記事を書きました。

最近になって、とあるブログサービスの CDN にある画像ファイルを、ローカルにダウンロードしたいなという場面に遭遇しました。
ブラウザで右クリックして保存するのも面倒だったので、せっかくなら Windows10 でも wget ができないか調べてみました。
wgetはWindows10に対応していない
Wget のサイトを見てみると、最終更新が 2008 年になっていて進展がありません。
exe や dll が使える可能性はありますが、10 年以上前のものを意地でも使う必要はありません。
ローカルに Cygwin や VirtualBox(Vagrant)などがあれば、そこで取得したものをファイル共有という手段も取れます。
しかし、そんな環境がない場合もありますよね。
そんな時、PowerShell 上で Invoke-WebRequest を利用する記事を見つけました。
Invoke-WebRequestを試す
いまでも、ついつい「Windowsシステムツール」内にあるコマンドプロンプトを起動してしまいがちなのですが、Windows でターミナルと言えばもう PowerShell ですよね。
ということで、Invoke-WebRequest を使ってみます。
1 2 3 4 5 6 7 8 9 | $ Invoke-WebRequest -Uri "https://example.org/hoge.jpg" -OutFile "hoge.jpg" $ dir ディレクトリ: C:\work\images Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 2019/01/31 1:04 240289 hoge.jpg |
欲しいリソース(画像など)の URL と保存先のファイル名を指定するだけのシンプルなコマンドです。
-Uri:リソースURL
-OutFile:出力ファイル名
外部サイトのリソース URL に規則性があればコマンド作成も楽ですが、ランダムなファイル名だと、ファイル名を先に特定する必要があるので、右クリックで頑張るかどうかは量と時間次第ですね。