2022.11.12訂正
最近はここにある方法ではなく、もっぱらStart-BitsTransferを利用しています。
Start-BitsTransfer -Source https://aka.ms/ssmsfullsetup -Destination SSMS-Setup-JPN.exe
みたいな感じですね。高速かつ進捗表示があるので気に入っています。
2020.03.15 9:39訂正
👇進捗が表示されて、且つ、ダウンロード速度が改善される方法を教えていただいたので修正。
-UseBasicParsingを使うと状況が変わったりするんだろうか?、とふと思った。
— はぇ~ (@haxe) 2020年3月15日
PowerShellで大きなファイルをダウンロードしようとした場合、ブラウザなどからダウンロードする場合と比較して、非常に遅いことがあります。
これはダウンロード中に進捗をバイト単位でコンソールに表示しているからで、進捗表示を抑制することで大幅に速度を改善することができます。
進捗を非表示にしてもよいのですが、-UseBasicParsingオプションを利用すると進捗が表示されつつ、高速にダウンロードできるようです。
Invoke-WebRequest -UseBasicParsing -Uri https://aka.ms/ssmsfullsetup -OutFile SSMS-Setup-JPN.exe
以下は別解ですが、進捗表示されないので、あまりお勧めではない。
具体的には次のように実行しましょう。
$ProgressPreference = 'SilentlyContinue' Invoke-WebRequest -Uri https://aka.ms/ssmsfullsetup -OutFile SSMS-Setup-JPN.exe
一度サイレントに変更すると、以後適用され続けるため、進捗表示を戻したい場合は次のように戻しましょう。
$ProgressPreference = 'Continue'
参考