迷わずに PowerShell のバージョンを確認する方法





【ホームページ移転のお知らせ】
当サイトは以下のURLに移転しました。
https://www.eco-s.co.jp/cocosnakamura/

あなたは赤いエラー メッセージを見つめていますが、スクリプトがなぜ停止したのかわかりません。昨日はラップトップで正常に動作していましたよね?ほとんどの管理者は PowerShell をブラック ボックスのように扱います。彼らは青いコンソールを開いてコマンドを入力し、祈ります。しかしここで問題が発生します。Windows 11 には依然としてデフォルトで古いバージョンが同梱されています。バージョンを確認していない場合は、基本的に目隠しをした状態でコーディングしていることになります。真剣に。



ザ・クイック

考えすぎないでください。ショーを実際に実行しているものを知りたい場合は、1 つのコマンドが必要です。ターミナルを開いて次のように入力します。

$PSVersionTable

それでおしまい。プロパティのリストが表示されます。あなたが気にかけているのは、PSバージョン。 5 で始まる場合は、従来の Windows PowerShell (古い .NET Framework 上に構築されたもの) を実行していることになります。 7 で始まる場合は、最新のクロスプラットフォーム エンジンを使用していることになります。なぜこれが重要なのでしょうか? GitHub にある優れた機能の半分はバージョン 5.1 では動作しないためです。それはPS2でPS5のゲームを実行しようとするようなものです。

$PSVersionTable 対 Get-Host: 真実

Get-Host を常に使用している人を見かけます。そんなことはやめてください。それは罠です。 Get-Host は、プログラムエンジン自体のバージョンではなく、PowerShell ISE や VS Code ターミナルなどのエンジンをホストします。それは誤解を招きます。真実が知りたいなら、表を使ってください。それは決して嘘をつきません。



出力を理解する

table コマンドを実行すると、次のような項目が表示されます。PS版。 「デスクトップ」と表示されている場合は、昔ながらの Windows バージョンを使用していることになります。 「Core」と表示されている場合は、新しいものを使用しています。あなたも見るかもしれませんCLRバージョン—それは共通言語ランタイムのバージョンです。主に専門的な統計情報ですが、環境が奇妙に動作し始めた場合 (特にカスタム DLL の場合) に役立ちます。

OS の詳細: Windows、Linux、Mac

Windows 10と11はおかしいです。 PowerShell 5.1 はシステムに組み込まれていますが、Windows が内部雑用に使用するため、アンインストールすることもできません。ただし、PowerShell 7 を同時にインストールすることはできます (また、そうする必要があります)。

Linux または macOS 上でしょうか?あなたは厳密に pwsh の世界にいるのです。そこには5.1は見つかりません。 Mac でバージョンを確認するには、ターミナルを押して「pwsh -v」と入力します。迅速かつ直接的であり、番号だけが必要な場合は巨大なテーブルで時間を無駄にする必要はありません。

PowerShell 7 へのアップグレード (正しい方法)

2005 年のように MSI ファイルを探しに行かないでください。ウィンゲット。これは、システムを乱雑にせずにツールを鋭く保つ最もクリーンな方法であり、夢のように更新を処理します。

winget install --id Microsoft.PowerShell --source winget

それが完了すると、2 つのバージョンが作成されます。持っていますpowershell.exe(古い 5.1) およびpwsh.exe(新しい 7.x)。新しいものを使用してください。より高速で、JSON の処理が優れており、最新の Web API を使用しようとしても癇癪を起こすことはありません。

Azure と M365 のバージョニング

クラウド環境ではさらに混乱が加わります。 Exchange Online または Azure を管理している場合、PowerShell エンジンだけを心配しているのではなく、モジュール。実際に何がインストールされているかを確認するには、Get-Module -ListAvailable を使用してください。 Microsoft Graph コマンドが失敗する場合は、通常、SDK のバージョンが 3 つ遅れていることが原因です。モジュールを更新しないと、スクリプトが壊れてしまいます。

よくある質問

CMD で PowerShell のバージョンを確認するにはどうすればよいですか?

powershell -command '$PSVersionTable.PSVersion'」と入力します。エンジンが起動し、バージョンを尋ねられて終了します。単純。

PowerShell の最新バージョンは何ですか?

2024 年末から 2026 年に向けて、PowerShell 7.4 (LTS) がゴールド スタンダードとなります。絶対的な最新のプレビュー ビルドについては、公式 GitHub を確認してください。

PowerShell 5 と 7 を同時に実行できますか?

はい。これらは異なるフォルダーに存在し、異なる実行可能ファイルを使用します。彼らは争いません。実際、これは互換性テストに推奨される設定です。