Microsoft、「PowerShell 7.0」を正式リリース:互換性がないモジュールへの対応も進む
Microsoftは、「PowerShell 7.0」の一般提供を開始した。「Windows PowerShell」のオープンソースエディション「PowerShell Core」の最新メジャーバージョンという位置付けだ。次期7.1の開発も進んでいるという。
Microsoftは2020年3月4日(米国時間)、「PowerShell 7.0」の一般提供を開始したと発表した。「Windows PowerShell」のオープンソースエディション「PowerShell Core」の最新メジャーバージョンという位置付けだ。
PowerShellは、JSON、CSV、XMLなどの構造化データやREST API、オブジェクトモデルの処理に最適化された自動化ツールであり、構成フレームワークでもある。クロスプラットフォームを特徴としており、Windowsの他、LinuxとmacOSで動作する。コマンドラインシェルやオブジェクト指向スクリプト言語に加え、スクリプトやコマンドレットの実行が可能であり、モジュール管理のためのツールセットを含む。
Microsoftは2017年にPowerShellの新エディションとしてPowerShell Core 6を発表している。PowerShell Coreは、.NET Coreをランタイムとして使用し、WindowsとLinux、macOSのクロスプラットフォームで動作する。SSHベースのPowerShell Remotingが加わった他、RESTとJSONに対するサポートを拡大し、公式Dockerコンテナも加わった。ライセンス面では、初めてオープンソースライセンス(MITライセンス)を採用している。PowerShell Core 6.2以降の2019年には名称を「PowerShell 7」に変えた。
PowerShell 7.0では何が加わったのか
PowerShell 7.0では、新しいコマンドレットやAPIを追加し、バグを修正した他、次のような数多くの新機能が加わった。
- ForEach-Objectコマンドレットで、「-Parallel」パラメーターを用いたパイプラインの並列化
- 新しい演算子
三項演算子「a ? b : c」
パイプラインチェイン演算子「||」「&&」
Null合体演算子「??」「??=」 - エラーの調査を助けるシンプルな動的エラービューと「Get-Error」コマンドレット
- ユーザーが暗黙のWindows PowerShellセッションでモジュールをインポートできるようにする互換性レイヤー
- 新バージョンの自動通知機能
- PowerShell 7.0からDSCリソースを直接呼び出す機能(実験的機能)
$logNames = 'Security','Application','System','Windows PowerShell','Microsoft-Windows-Store/Operational' $logEntries = $logNames | ForEach-Object -Parallel { Get-WinEvent -LogName $_ -MaxEvents 10000 } -ThrottleLimit 5 $logEntries.Count 50000
なお、PowerShell Core 6.xは、「.NET Core 2.x」に対応しているが、PowerShell 7.0は「.NET Core 3.1」に対応している。これにより、新版では特に、Windows上で多くの.NET Framework APIが利用可能になり、既存のWindows PowerShellモジュールとの下位互換性が向上した。
例えば「Out-GridView」や「Show-Command」などのGUI機能を必要とするWindows上の多くのモジュールや、Windowsの一部として出荷される多くの管理モジュールが含まれる。
PowerShell 7.0の入手方法
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- Microsoft、「PowerShell 7 Preview 6」を公開
Microsoftは、「PowerShell 7 Preview 6」を公開した。Webコマンドレットのエラーチェックスキップや変数のNullチェックのスキップなど、多くの新機能を追加した。 - Microsoftが「PowerShell 7」のプレビュー版を発表、開発計画の詳細も
Microsoftは、PowerShell Coreの次期バージョン「PowerShell 7」の最初のプレビュー版を発表、詳細な開発計画も明らかにした。.NET Core 3.0対応やWindowsとの互換性向上が特徴。 - Microsoft、「PowerShell Core 6.2」を公開、次期リリースは「PowerShell 7」に
Microsoftは、「PowerShell」について、オープンソースエディションの最新リリース「PowerShell Core 6.2」の一般提供を開始した。また、次期リリースの開発計画と、名称が「PowerShell 7」となる理由も明らかにした。