要は、Server Core や Hyper-V Server
Windows PowerShell が利用できる場合...
$webclient = new-object System.Net.WebClient
$webclient.DownloadFile("<URL>","<FilePath>")
※コマンド プロンプトで Windows PowerShell のシェルを開始するには...
%Windir%\System32\WindowsPowerShell\v1.0\powershell.exe
※システム修復環境(Windows RE)のコマンド プロンプトからは Windows PowerShell は使用できません。Windows PE 4.0 からはオプションで Windows PowerShell がサポートされましたが(WinPE-PowerShell)、利用するにはカスタマイズした Windows PE イメージの作成が必要。
→ WinPE のいまむかし (日本語入力、PowerShell、Disk2vhd も) (2014/03/14)
Windows PowerShell (>=3.0) が利用できる場合...
Invoke-WebRequest <URL> -OutFile <FilePath>
※Invoke-WebRequest の部分を wget と書いても OK。wget は Invoke-WebRequest のエイリアスになってる。
Windows Script Host (WSH) で ...
cscript mywget.vbs <URL> <FilePath>
mywget.vbs はメモ帳 (notepad.exe) でその場でがんばって書く。
mywget.vbs のサンプル コード (他の方のサンプルから無断拝借したコードがベースです)
※システム修復環境 (Windows RE) や素の Windows PE では ADODB.Stream も使えませんでした。Windows PE のイメージをカスタマイズして WinPE-MDAC を入れればなんとかなるのかなぁ?と思う。試していない。
残念無念。
7/10 追記)
WinPE-MDAC や WinPE-PowerShell を入れてカスタマイズした Windows PE 4.0 以降のイメージなら、ADODB.Stream も、PowerShell (Invoke-WebRequest) も使えました。でも、これだと“ツール不使用”のポリシーから外れてしまう。
WinPE: パッケージの追加 (オプション コンポーネント リファレンス)
[URL] http://msdn.microsoft.com/ja-jp/library/hh824926.aspx
PowerShellでスマートにダウンロードする(BITS)・その2・フォアグラウンド
返信削除Start-BitsTransfeというCommandletがあるわけですが、本文のオペレーション例を記述なさったのはどういったケースでアドバンテージがあったわけでしょうか?
個人的なメモですので、何もありません。
返信削除あえて言うなら、元々、Windows回復環境やWindows PEのコマンドプロンプトで何とかしたいと考えていたので、BITSは頭にありませんでした。Windows PEにはBITSサービスは無いと思います。あと、Windows PEでPowerShellが使えるのは、Windows PE 4.0で作るカスタムイメージだけ。
非推奨になった BITSAdmin に対応する Start-BITSTransefer のことは知りませんでした。 メモの補強になります。情報ありがとうございまし