徒然

日常を垂れ流します。

PowerShellをPowerShellでアップデートする

久々です。

備忘録がてらの更新。※20201114あまりにも適当だったので手を加えました。

PowerShell7.0がリリースされて久しいですが、最近はこんな機能ができてます。

新バージョンの通知

Microsoft お得意の(?)おせっかいですね。 アップデート用のコマンドとか用意してくれたらいいのに…なんて思ったんですが、

ないんですよね、これが!!!

コマンドでPowershell7.0.xをインストールする

一応、PowerShell Gallery | Home にワンパンでアップデートできるモジュールは散見されますが、

何入れたか逐次忘れてしまう私は、そのモジュールのアップデートさえ怠ってしまいそうです、、、

よって、 WSL2を導入しましょう コピペで使えるアップデートコマンドを作ってメモしておこうという話です。

↓これです

PS > (New-Object Net.WebClient).DownloadFile("https://github.com/PowerShell/PowerShell/releases/download/v7.0.3/PowerShell-7.0.3-win-x64.msi", "$env:Temp\powershell.msi")
PS > msiexec.exe /package $env:Temp\powershell.msi /passive ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1 ENABLE_PSREMOTING=1 REGISTER_MANIFEST=1

(New-Object Net.WebClient).DownloadFilecurl(Invoke-WebRequest) でもいいと思います。

PS > Invoke-WebRequest "https://github.com/PowerShell/PowerShell/releases/download/v7.0.3/PowerShell-7.0.3-win-x64.msi" -OutFile "$env:Temp\powershell_a.msi"
PS > msiexec.exe /package $env:Temp\powershell_a.msi /passive ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1 ENABLE_PSREMOTING=1 REGISTER_MANIFEST=1

msiexec.exe には公式では /quiet オプションが入っていましたが、進捗状況が分からなくなったので /passive としました。

再起動して終了です。

結構手間かかったので、フツーにインストールした方が早いかも。

以上!!!