はじめに
PowerShell 7 を使用していると、起動時に次のようなメッセージが出ることがあります
A new PowerShell stable release is available: v7.5.1
Upgrade now, or check out the release page at:
https://aka.ms/PowerShell-Release?tag=v7.5.1
今回は、winget を使って簡単に PowerShell を最新版へアップデートする方法を紹介します
前提条件
- Windows 10 or 11
-
winget
が使える状態(PowerShell 7.1+ または Windows Terminal など) - 管理者権限なしでも可能ですが、環境によってはインストーラーの実行時に管理者許可を求められる場合があります
実行コマンド
以下のコマンドを PowerShell 上で実行します
winget upgrade --id Microsoft.PowerShell
初回実行時は、以下のような確認が表示されるようです
'msstore' ソースでは、使用する前に次の契約を表示する必要があります
[Y] はい [N] いいえ: Y
[Y] を入力して続行してください
アップデート手順の流れ
上記のコマンドを実行すると以下を自動で行ってくれます
- 最新バージョンの検出
- インストーラーのダウンロード(GitHubから)
- インストーラーハッシュの検証
- インストール開始
- PowerShellを再起動すれば最新版に切り替わります
PS C:\Users\hogehoge> winget upgrade --id Microsoft.PowerShell
'msstore' ソースでは、使用する前に次の契約を表示する必要があります。
Terms of Transaction: https://aka.ms/microsoft-store-terms-of-transaction
ソースが正常に機能するには、現在のマシンの 2 文字の地理的リージョンをバックエンド サービスに送信する必要があります (例: "US")。
すべてのソース契約条件に同意しますか?
[Y] はい [N] いいえ: Y
見つかりました PowerShell [Microsoft.PowerShell] バージョン 7.5.1.0
このアプリケーションは所有者からライセンス供与されます。
Microsoft はサードパーティのパッケージに対して責任を負わず、ライセンスも付与しません。
ダウンロード中 https://github.com/PowerShell/PowerShell/releases/download/v7.5.1/PowerShell-7.5.1-win-x64.msi
██████████████████████████████ 108 MB / 108 MB
インストーラーハッシュが正常に検証されました
パッケージのインストールを開始しています...
インストールが破棄されました
注意点:インストールが破棄された?
私の環境では最後に以下が出力されました
インストールが破棄されました
実際には問題なくアップデートが完了していました
PowerShellを再起動し、以下のコマンドでバージョンを確認します
PS C:\Users\hogehoge> $PSVersionTable
Name Value
---- -----
PSVersion 7.5.1
PSEdition Core
GitCommitId 7.5.1
OS Microsoft Windows 10.0.19045
Platform Win32NT
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
WSManStackVersion 3.0
アップデートが完了していることが確認できました