米Microsoftは3月4日（現地時間）、スクリプティング環境「PowerShell」の最新メジャーアップデート「PowerShell 7.0」を一般公開した。クロスプラットフォーム化がひとまず完了したことから、「.NET Core 3.0」の後継が「.NET 5」になったのと同様、本バージョンから名称が「PowerShell Core」から単なる「PowerShell」に変更されている。

「PowerShell 7」は構造化されたデータ（JSON、CSV、XMLなど）、REST API、オブジェクトモデルなどを処理するために最適化されたクロスプラットフォームの自動化ツールおよびシステム設定の管理フレームワーク。コマンド ラインシェルやオブジェクト指向スクリプト言語、スクリプト・コマンドレットの実行とモジュールを管理するためのツールセットが含まれる。

最新版の変更で目に付くのは、新しい演算子がいくつかサポートされたことだろう。三項演算子（a ? b : c）やパイプチェーン（||、&&）、null結合演算子（??、??=）が新たに利用できるようになり、左オペランドが真、偽、null、特定値であるかどうかといったチェックをよりシンプルに記述することができる。

また、パイプラインの並列化を行う“ForEach-Object -Parallel”、エラーの調査を容易にするコマンドレット“Get-Error”などを追加。新しいバージョンを通知する機能も導入された。「.NET」は「.NET Core 2.x」から「.NET Core 3.1」（LTS）ベースとなっている。

「PowerShell 7」は現在、以下のプラットフォームで利用可能。x86/x64だけでなく、「Debian」や「Ubuntu」ではARM32/ARM64もサポートされる（ARM版Windowsは実験的対応）。

Windows 8.1/10

Windows Server 2012/2012 R2/2016/2019

macOS 10.13+

Red Hat Enterprise Linux（RHEL）、CentOS 7

Fedora 30+

Debian 9

Ubuntu 16.04+

Alpine Linux 3.8+

また、公式にはサポートされていないものの、「Arch Linux」や「Kali Linux」向けのパッケージも提供されている。ライフサイクルは「.NET」に合わせたものに変更されため、「.NET Core 3.1」のリリース（2019年12月）から約3年間サポートされることになる。

編集部追記： 対応プラットフォームをリリースノート準拠に改めました