PowerShell 5.1を7.xに更新する方法【winget・MSI対応】

PowerShellのアイキャッチ

「新機能と改善のために最新の PowerShell をインストールしてください!」——PowerShellを開いたときにそんなメッセージ、いつの間にか出るようになっていませんでしたか?

あるいは、GitHubで見つけたスクリプトを実行しようとしたら「このバージョンでは実行できません」と弾かれた……なんて経験もあるかもしれません。

Windowsに最初から入っているPowerShellは5.1という少し古いバージョンです。最新の7.xとは別物でWindows Updateをかけても自動では更新されないんですよね。

本記事ではバージョン確認から最新版(7.x)へのアップデート手順まで、winget・公式インストーラー・Microsoft Storeの3つの方法を解説します。

目次

この記事でわかること

  • 現在のPowerShellバージョンを1コマンドで確認する方法
  • PowerShell 5.1と7.xの具体的な違いとアップデートすべき理由
  • Windows 10/11でPowerShell 7.xへ更新する3つの手順(どれがおすすめか)
  • 5.1と7.xを「共存」させて使い分ける方法 – インストール後によくあるエラーと対処法

PowerShellのバージョン確認方法

まずは現在使っているPowerShellのバージョンを確認しましょう。

現在のバージョンを調べるコマンド

PowerShell(またはWindows PowerShell)を起動して、以下のコマンドを実行します。

PowerShell
$PSVersionTable
PowerShell – 実行結果
Name                           Value
----                           -----
PSVersion                      7.5.4
PSEdition                      Core
GitCommitId                    7.5.4
OS                             Microsoft Windows 10.0.22000
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0

PSVersionの行が現在のバージョンです。

  • 5.1.xxxxxと表示される場合:PowerShell 5.1(Windows標準版)
  • 7.x.xと表示される場合:PowerShell 7.x(最新版)

5.1と表示された場合はアップデートをおすすめします。

PowerShell 5.1と7.xの違いとは?

項目PowerShell 5.1PowerShell 7.x
対応OSWindowsのみWindows / Mac / Linux
.NETバージョン.NET Framework.NET Core / .NET 8以降
更新頻度セキュリティ修正のみ定期的に新機能追加
パフォーマンス標準高速化・最適化済み
サポートWindows標準サポート独立したサポートサイクル
新構文非対応(三項演算子など)対応

PowerShell 7.xは5.1の後継として開発された新世代のPowerShellです。クロスプラットフォーム対応やパフォーマンス向上のほか、新しいコマンドレットも多数追加されています。

PowerShellをアップデートすべき理由

「今の5.1で十分動いているのになぜ更新が必要なの?」と思われるかもしれません。筆者もそう思っていた時期がありましたが、アップデートしてみると地味に恩恵がありました。

セキュリティ強化と新機能

  • 最新のセキュリティパッチが適用される
  • 三項演算子(? :)などの新しい構文が使える
  • パイプライン処理の高速化
  • エラーハンドリングの改善
  • 最新のAzure・Microsoft 365モジュールのサポート
  • GitHubで公開されている最新スクリプトの実行

クロスプラットフォーム対応

PowerShell 7.xはWindowsだけでなくMacやLinuxでも動作します。将来的に別OSを使う可能性がある場合、PowerShell 7.xで書いたスクリプトはそのまま流用できるわけですね。

PowerShell 7.xへの更新手順【Windows】

Windows UpdateではPowerShell 5.1の更新のみ配信されます。7.xへのアップデートには別途インストール作業が必要です。

ここでは3つの方法を紹介します。

【2026年4月時点の注意】 PowerShell 7.7以降ではMSIインストーラーが廃止予定です。現在の安定版(7.6.x LTS)まではMSIが引き続き提供されますが、今後を見据えるとwingetでのインストールが最もおすすめです。

方法①:wingetコマンドで更新(最もおすすめ)

Windows 10/11に標準搭載のwinget(Windowsパッケージマネージャー)を使う方法です。コマンド数回で完結し、今後のアップデートも1コマンドで済むのが便利なところですね。

Step
利用可能なバージョンを確認する
PowerShell
winget search Microsoft.PowerShell
Step
同意を求められた場合

下記が表示されたら Y を入力してEnterで同意します。

PowerShell – 実行結果
'msstore' ソースでは、使用する前に次の契約を表示する必要があります。
Terms of Transaction: https://aka.ms/microsoft-store-terms-of-transaction
ソースが正常に機能するには、現在のマシンの 2 文字の地理的リージョンをバックエンド サービスに送信する必要があります (例: "US")。

すべてのソース契約条件に同意しますか?
[Y] はい  [N] いいえ:
Step
バージョンを確認する
PowerShell – 実行結果
名前               ID                           バージョン ソース
------------------------------------------------------------------
PowerShell         Microsoft.PowerShell         7.5.4.0    winget
PowerShell Preview Microsoft.PowerShell.Preview 7.6.0.5    winget

「Preview」が付いているほうはいわゆるβ版のようなものです。安定版(Previewなし)をおすすめします。

Step
インストール(アップデート)を実行する
PowerShell
winget install --id Microsoft.PowerShell --source winget
PowerShell – 実行結果
既存のパッケージが既にインストールされています。インストールされているパッケージ...をアップグレードしようとしています
見つかりました PowerShell [Microsoft.PowerShell] バージョン 7.5.4.0
このアプリケーションは所有者からライセンス供与されます。
Microsoft はサードパーティのパッケージに対して責任を負わず、ライセンスも付与しません。
ダウンロード中 https://github.com/PowerShell/PowerShell/releases/download/v7.5.4/PowerShell-7.5.4-win-arm64.msi
  ██████████████████████████████   103 MB /  103 MB
インストーラーハッシュが正常に検証されました
パッケージのインストールを開始しています...
インストールが完了しました

「インストールが完了しました」と表示されればアップデート完了です。

今後のアップデートは以下1コマンドで実行できます。

winget upgrade --id Microsoft.PowerShell --source winget

wingetコマンドの詳しい使い方はこちらで解説しています。

方法②:公式インストーラー(MSI)で更新

GUIで操作したい場合や、コマンドに不慣れな場合はインストーラーを使う方法が確実です。

注意: MSIインストーラーはPowerShell 7.6系(LTS)まで提供されます。7.7以降はMSIが廃止予定のため、将来的にはwingetまたはMSIXパッケージへの移行が必要になります。

Step
公式リリースページにアクセスする
Step
インストーラーをダウンロードする

ページ下部の「Assets」セクションから環境に合ったファイルをダウンロードします。

  • 64ビット版Windows(ほとんどの場合): PowerShell-7.x.x-win-x64.msi
  • 32ビット版Windows: PowerShell-7.x.x-win-x86.msi
msiパッケージをダウンロード
Step
インストーラーを実行する

ダウンロードした .msi ファイルをダブルクリックして実行します。

msiパッケージを実行
Step
セットアップウィザードスタート

「Next」で次に進みます。

PowerShellセットアップウィザード「1」
Step
インストール先フォルダーの指定

インストール先を設定します。インストールパスにこだわりがなければ初期のままで問題ありません。

PowerShellセットアップウィザード「2」
Step
オプション項目の選択

各種オプション設定を行います。初期でチェックが入っていない項目がありますが結構便利なものがありますので確認してみることをお勧めします。

PowerShellセットアップウィザード「3」
  • Add PowerShell to Path Environment Variable
    環境変数PATHへの追加。pwshコマンドでどこからでも起動できるようになる、必須レベルの設定です。
  • Register Windows Event Logging Manifest
    Windowsイベントログへの記録を有効化します。トラブルシューティングに役立つ推奨設定です。
  • Enable PowerShell remoting
    リモート操作の有効化します。サーバーとして使う場合以外はオフでも構いません。
  • Disable Telemetry
    利用状況データの送信を無効化します。Microsoftへ統計データを送りたくない場合はチェックを入れます。
  • Add ‘Open here’ context menus to Explorer
    右クリックメニューに「ここでPowerShellを開く」を追加。フォルダを右クリックしてすぐ起動できる便利なオプションです。
  • Add ‘Run with PowerShell 7’ context menu for PowerShell files
    .ps1 ファイルを右クリックして「PowerShell 7で実行」できるようにします。

エクスプローラーで特定フォルダからPowerShellを起動する方法は以下で詳しく解説しています。

Step
アップデートオプションを選ぶ

アップデートオプションを選択して「Next」で次へ進みます。

PowerShellセットアップウィザード「4」
  • Enable updating PowerShell through Microsoft Update or WSUS
    Windows Updateと同じ仕組みで自動アップデートされるようになります。
  • Use Microsoft Update when I check for updates
    Windows Update実行時にPowerShellの更新も確認するようになります。
Step
インストール実行

「Install」をクリックするとインストールが開始します。完了まで待てば作業終了です。

PowerShellセットアップウィザード「5」

方法③:Microsoft Storeから更新

GUIで操作でき、コマンドが不要な方法です。

Step
WindowsキーでMicrosoft Storeを検索して起動します。
Step
「PowerShell」で検索してアプリを見つけ、「入手」をクリックします。
Microsoft Storeで入手
Step
インストールが完了するまで待ちます。

自動更新が有効になる点がメリットです。ただし他の方法と比べてカスタマイズ性は低いため、特定のオプションを設定したい場合はwingetまたはMSIをおすすめします。

PowerShell 5.1と7.xは併存できる?

「PowerShell 7.xをインストールしたら、5.1は使えなくなるの?」

そんな心配は不要です。PowerShell 5.1と7.xは共存可能です。

両バージョンの使い分け方

それぞれ別のフォルダにインストールされるため、同時に両バージョンを使い続けられます。

  • PowerShell 5.1: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
  • PowerShell 7.x: C:\Program Files\PowerShell\7\pwsh.exe

起動方法の違い:

  • PowerShell 5.1: Windowsメニューから「Windows PowerShell」を選択
  • PowerShell 7.x: Windowsメニューから「PowerShell 7」を選択、または pwsh コマンドを実行

使い分けの目安:

  • 5.1を使う場合: 古いスクリプトやWindows専用モジュールを使う場合
  • 7.xを使う場合: 新しいスクリプト・最新機能・クロスプラットフォーム対応が必要な場合

基本的には今後PowerShell 7.xを標準で使うことを推奨します。5.1は互換性が必要なときだけ使う、という感じです。

アップデート時のよくあるトラブルと対処法

PowerShell 7.xのインストール時に発生しやすいトラブルと解決方法をまとめました。

インストールが失敗する場合

UACダイアログが表示されない / 権限エラーが出る

インストーラーファイルを右クリックして「管理者として実行」を選択してください。


「インストール中にエラーが発生しました」と表示される

以下を順番に試してみてください。
 1. Windowsを最新の状態に更新する。
 2. ウイルス対策ソフトを一時的に無効化する。
 3. 既存のPowerShell 7.xをアンインストールしてから再インストールする。

スクリプトが動かなくなった場合

「このシステムではスクリプトの実行が無効になっているため…」

実行ポリシーを設定してください。PowerShell 7を管理者権限で起動し、以下を実行します。
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

実行ポリシーを設定してスクリプトが動くようになると、PowerShellでできることがぐっと広がります。たとえばネットワークの疎通確認もPowerShellだけで完結できます。


「モジュール〇〇が見つかりません」

一部のモジュールはPowerShell 7.xで動作しない場合があります。
 ・モジュールのドキュメントでPowerShell 7.x対応を確認する。
 ・対応していない場合はPowerShell 5.1で実行する。
 ・または代替モジュールを探す。


インストール後もバージョンが5.1のまま

正しいPowerShellを起動しているか確認してください。「Windows PowerShell」ではなく「PowerShell 7」を起動する必要があります。VS CodeやWindowsターミナルを使っている場合は、デフォルトシェルの設定も確認してみてください。

Q&A

wingetがWindows 10に入っていない場合はどうすればいい?

wingetはWindows 11には標準搭載されていますが、Windows 10の場合はMicrosoft Storeから「アプリインストーラー」を入手することで使えるようになります。インストール後に一度ターミナルを再起動してから winget --version で確認してみてください。

PowerShell 7.xをインストールするとWindows PowerShell(5.1)は削除される?

削除されません。両バージョンは別フォルダにインストールされるため共存できます。5.1は「Windows PowerShell」、7.xは「PowerShell 7」として引き続き起動できます。

現在インストールされているのがMSI版かMSIX版かを確認する方法はありますか?

以下のコマンドでインストールパスを確認できます。

PowerShell
(Get-Command pwsh).Source

$Env:ProgramFiles\WindowsApps\ から始まる場合はMSIX版、それ以外はMSI版です。

LTSバージョンとStableバージョンの違いは?

LTS(Long Term Support)は長期サポート版で、安定性・セキュリティ更新を重視したバージョンです。現在のLTSは7.6系で、約3年間のサポートが保証されています。Stable版(7.5系など)はLTSより新機能が先に追加されますが、次のLTSリリースから約6か月後にサポートが終了します。迷ったらLTS版を選ぶのがおすすめですよ。

まとめ:PowerShellは定期的にアップデートしてね

今回はPowerShellを最新版(7.x)にアップデートする方法を解説しました。

  • バージョン確認は $PSVersionTable コマンドで一発でわかるよ。
  • インストール方法は winget・MSI・Microsoft Storeの3つ。今後も更新しやすいwingetがいちばんおすすめだよ。
  • PowerShell 5.1と7.xは共存できるから、怖がらずにアップデートしてみてね。
  • インストール後に実行ポリシーのエラーが出たら Set-ExecutionPolicy RemoteSigned -Scope CurrentUser を試してみてね。
  • 今後のアップデートは winget upgrade --id Microsoft.PowerShell --source winget で簡単にできるよ。

2026年4月時点でPowerShell 7.7以降ではMSIインストーラーが廃止される予定です。現在の安定版(7.6 LTS)まではMSIが提供されますが、今後を見据えてwingetに慣れておくと便利ですよ。

PowerShell 7.xへのアップデートが完了したら、次は実際の活用方法を覚えていきましょう。よく使うコマンドや実践的なテクニックは以下のまとめ記事で紹介しています。

今後の更新は winget upgrade --id Microsoft.PowerShell --source winget で簡単にできます。タスクスケジューラーと組み合わせると定期的な自動更新も実現できます。自動化に興味がある方はこちらもどうぞ。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次