PowerShell 7.1 Preview 1登場

【連載】

PowerShell Core入門 - 基本コマンドの使い方

【第93回】PowerShell 7.1 Preview 1登場

[2020/04/03 07:00]後藤大地 ブックマーク ブックマーク

PowerShell 7.1 Preview 1登場

前回、PowerShell 7の新機能や変更点などについてまとめるとともに、今後どのような名称が使われることになるのかといった話の整理や、主要OSにPowerShell 7をインストールする方法を説明した。

PowerShell 7が公開されたばかりなのだが、Microsoftは2020年3月26日(米国時間)、「PowerShell 7.1 Team Investments and Preview.1 Release|PowerShell」において、PowerShell 7の次のバージョンとなる「PowerShell 7.1」へ向けた最初のプレビュー版「PowreShell 7.1 Preview 1」の公開を伝えた。Microsoftは早めに次のバージョンのプレビュー版を公開し、開発を進めていきたい意向を示している。

PowerShell 7.1 Team Investments and Preview.1 Release|PowerShell

PowerShell 7.1 Preview 1にはすでに多くの変更が追加されている。PowerShell 7.0.0のリリースに間に合わなかった機能や変更が盛り込まれているためだ。先日公開された「.NET 5 Preview 1」もこのバージョンに含まれている。.NET 5はPowerShell 7.1の基盤となることが予定されている。今回はPowerShell 7.1 Preview 1の変更点や今後の取り組みなど、現在わかっていることをまとめる。

PowerShell 7.1で目指すもの

MicrosoftはPowerShell 7.1で特に実現したい内容として次のような説明を行っている。ユーザーや開発者の体験を向上させるというのが主なテーマということになりそうだ。

  • WindowsにおけるPowerShell 7のインストールおよびアップデートを簡単にする:前回まとめた通り、Windows 10にPowerShell 7をインストール、またはアップデートするには、それなりにユーザーが操作を行わなければいけない。開発者にとってみればそれほど難しい操作ではないと思うが、そうでないユーザーにとってはどのパッケージをダウンロードすればよいか選択するだけでも一苦労だろう。Microsoftはこうした現在のWindowsにおけるPowerShell 7の面倒さを認識しており、より簡単にインストール/アップデートを実施する方法を検討しているという。現在のところPowerShell 7をWindowsとともに出荷する計画はないとしているが、最終的にはWindows 10に同梱され、Windows UpdateやMicrosoft Store経由でアップデートが実施されるようになるのではないかと考えられる
  • シェルの改善:現在のPowerShellはネイティブコマンドを実行する際に、その引数などをユーザーが期待しているように処理できないことがある。できればこうしたコマンドをPowerShellへコピー&ペーストしてそのまま実行できるようになることが望ましいため、そうした改善に取り組んでいくという。また、ネイティブコマンドとPowerShellの機能を組み合わせたいアドバンスドユーザーに対しても使いやすいシェルとなるように変更していく。例えば、「PSDrives」を使うことでOSに依存することなく抽象化されたファイルパスを実現できるが、現在のところこの機能はコマンドレットとスクリプトに限られている。こうした機能をネイティブコマンドに対しても機能するように開発していくとしている
  • インタラクティブなユーザー体験を向上させる:「最小限のタイピングでパイプラインを完了することができるように、予測エンジンを調整していく」「コンソールでパイプラインを作成している間に、現在の入力を放棄したり、新しいコンソールを開いたりすることなくパラメータに関するヘルプや完全なヘルプコンテンツを表示できるようにする」「コンソール出力を視覚的に見やすくするために、.NET System.CommandLineチームと協力して文字列を装飾する適切なAPIを開発するとともに、必要に応じて文字列をカラー/プレーンテキストの双方でレンダリングできるようにする」などとされている
  • PowerShellの軽量化:PowerShellには多くのコマンドレットとAPIが用意されている。これは利点でもあるが、その分ディスクスペースもかさむし、セキュリティ上のリスクにも成り得る。スクリプトを実行するだけなら、その実行に必要となるPowerShell関連の機能だけがインストールされているほうが好ましい。こうした機能を実現するために現在一枚岩で提供されているPowerShellをいくつかのモジュールに分割して提供できるようにする
  • PowerShellのパフォーマンス向上: .NETアセンブラへの依存を最小限のものへ減らしていくことでメモリ使用量を削減するとともに、スタートアップタイムの短縮を目指す


上記説明はあくまでもPowerShell 7.1で目指すものであり、PowerShell 7.1のリリースまでに全てが実現できるとは限らないとしている。後は開発の状況次第ということになるようだ。

PowerShell 7.1のリリーススケジュール

MicrosoftはPowerShell Core 6.0からPowerShell 7にかけて、おおよそ半年間(6カ月間)をめどに次のバージョンをリリースするスタイルを取っていた。PowerShell 7からは.NETのリリーススケジュールに合わせてPowerShell 7のリリースを行っていくことが予定されている。

現在、次の.NETとなる.NET 5のリリースは2020年冬が予定されている。PowerShell 7.1のリリースもこの時期を目指すとされており、.NET 5がリリースされてから1週間ないしは2週間以内にPowerShell 7.1のリリースが予定されている。

PowerShell 7.1ではモジュールやツールに関しても新しい取り組みが行われる予定になっているが、これからPowerShell 7.1と同時にリリースされるかはまだ未定とされている。開発が間に合えば同時にリリースするといった運びになるようだ。

現在の説明を読む限りでは、2020H1や2020H2のWindows 10フィーチャーアップデートが実施されても、PowerShell 7がWindows 10の同梱対象となることはなさそうだ。しかし、こうした意思決定は状況が変わると180度覆ることは珍しくない。今後どうなっていくのか状況をよく見ておきたいと思う。

※ 本記事は掲載時点の情報であり、最新のものとは異なる場合がございます。予めご了承ください。

一覧はこちら

連載目次

もっと知りたい!こちらもオススメ

【連載】RPA入門 - ツールで学ぶ活用シーン

【連載】RPA入門 - ツールで学ぶ活用シーン

AIには、ルールベース、機械学習、深層学習(ディープラーニング)の3つのレベルがあり、レベルが上がるに連れてより高度な人工知能を実現しますが、AIのスピンオフという位置付けで、Digital Labor(仮想知的労働者)によるホワイトカラー業務の自動化を実現するRPAが注目されています。

関連リンク

この記事に興味を持ったら"いいね!"を Click
Facebook で IT Search+ の人気記事をお届けします
注目の特集/連載
[解説動画] Googleアナリティクス分析&活用講座 - Webサイト改善の正しい考え方
[解説動画] 個人の業務効率化術 - 短時間集中はこうして作る
ミッションステートメント
教えてカナコさん! これならわかるAI入門
知りたい! カナコさん 皆で話そうAIのコト
対話システムをつくろう! Python超入門
Kubernetes入門
AWSで作るクラウドネイティブアプリケーションの基本
PowerShell Core入門
徹底研究! ハイブリッドクラウド
マイナビニュース スペシャルセミナー 講演レポート/当日講演資料 まとめ
セキュリティアワード特設ページ

一覧はこちら

今注目のIT用語の意味を事典でチェック!

一覧はこちら

会員登録(無料)

ページの先頭に戻る