PowerShell 7.0.0 Preview5登場

【連載】

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

【第71回】PowerShell 7.0.0 Preview5登場

[2019/10/25 17:35]後藤大地 ブックマーク ブックマーク

  • サーバ/ストレージ

サーバ/ストレージ

PowerShell 7.0.0 Preview5登場

Microsoftは2019年10月23日(米国時間)、「PowerShell 7.0.0 Preview5」において、PowerShell 7.0.0へ向けた5つ目のプレビュー版となる「PowerShell 7.0.0 Preview5」の公開を伝えた。PowerShell 7.0.0 Preview5における変更点やインストールパッケージに関しては次のページに詳細が掲載されている。


提供されているパッケージはWindows版(64ビット版、32ビット版、arm64版、arm32版)、macOS版、Linux版(Red Hat Enterprise Linux 7向け、Debian 9向け、Ubuntu 16.04 LTS向け、Ubuntu 18.04 LTS向け)など。

PowerShell 7.0.0 Preview5

PowerShell 7.0.0 Preview5で再度利用できるようになったGet-HotFixコマンドレット

Microsoftは2019年11月に「PowerShell 7.0.0 Preview6」の公開を予定しており、2019年12月にはリリース候補版の提供が予定されている。2020年1月に公開されるバージョンがリリース候補版になるのか、一般リリース版になるのかは現状では確かなことはわからないが、2020年1月に提供されるバージョンがほぼリリース版の機能でフィックスされることになるものとみられる。

PowerShell 7.0.0 Preview5 主な変更点

PowerShell 7.0.0 Preview5はプレビュー版という位置づけだが、このバージョンには興味深い新機能がいくつか導入されている。PowerShell 7.0.0 Preview5で導入された主な新機能や変更点は次のとおり。

  • 新しいパイプラインチェーンオペレータの導入。UNIX系のシェルでは「&&」と「||」という制御構文が利用できる。これはオペレータの前のコマンドの返り値が0かそれ以外かに合わせて、オペレータの次のコマンドを実行するかどうか挙動を変えるというものだ。「&&」では前のコマンドが成功した場合に後ろをコマンドを実行し、「||」では前のコマンドが失敗した場合に後ろのコマンドを実行する。PowerShell 7.0.0 Preview5に導入されたのは、これと同じ動作をするオペレータ。この機能によってPowerShellの記述をよりUNIX系のシェルのように行うことができる。PowerShell 7.0.0 Preview5ではコマンド、コマンドレット、関数がこのオペレータの処理対象となる
  • PowerShell 7.0.0 Preview5には「ヌル条件オペレータ」という機能も導入された。この機能は、UNIX系のシェルとは書き方が異なっている。「??」という表記のオペレータで、「??」の前には変数を指定する。変数が「ヌル($null)」だった場合には条件が真となり、「??」の後に記載した処理が行われるようになる。値がヌルの場合にデフォルト値を代入するといったような用途で利用できる。「??=」はヌル条件付き代入オペレータで、「??=」の前に指定した変数がヌルだった場合に「??=」の後に指定した値を代入する処理を行ってくれる
  • PowerShell起動時に新しいプレビュー版が存在するかどうか、セキュリティ修正版が存在するかどうかを通知する機能(実際にはPowerShell 7.0.0 Preview6がリリースされるまでこの機能が動作することはない)を搭載。ユーザーにアップデートを促す狙いがあるものとみられる
  • 型制約を持つ変数へのタブ補完機能の改善。列挙型のように代入できる値に型制約がある場合、タブ補完でその範囲を表示するように機能を改善
  • インストールされているシステムパッチを一覧表示させるGet-HotFixが動作するように変更(Windows版のみ)。Get-HotFixコマンドレットはSystem.Management名前空間に依存していたため、PowerShell Core 6系では利用できなくなっていた。PowerShell 7は.NET Core 3.0を使っており、Get-HotFixコマンドレットが利用できるようになった
  • Select-Stringコマンドレットにおいて指定した文字列を強調表示するように処理を変更
  • エラー表示のフォーマットを変更する機能を拡張
  • Format-Hexで表示されるデータのフォーマットをより扱いやすいように変更


スクリプトやコマンドの記述という面では、特に「&&」と「||」の表記ができるようになった点が注目される。UNIX系のシェルでは「&&」と「||」の記述をよく利用する。PowerShellでもこれと同じ記述ができるようになると、UNIX系のシェルに慣れたユーザーや管理者がPowerShell 7をより扱いやすくなるだろう。

もう1つ注目したいのは、アップデートが存在する場合にそれを通知する機能が追加された点だ。MicrosoftはPowerShell 7をデフォルトのPowerShellにするとしており、Microsoft Store経由で提供することが予想されている。つまり、アップデートはユーザーが行うことになる。そのため、ユーザーに迅速なアップデートを呼びかけるためにこの機能を追加したのだと考えられる。Microsoftがどのような形態でPowerShell 7の提供とアップデートの配信を考えているかが見えてきたと言える。

試してみよう

Windows PowerShell、PowerShell Core 6系、PowerShell 7系はそれぞれ共存可能な形式で提供されている。PowerShell 7は今のところGitHub経由で自らパッケージをダウンロード/インストールする必要があるが、ちょっと試してみるには良い状態に仕上がってきている。ぜひ一度、お試しいただきたい。

参考資料

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

一覧はこちら

連載目次

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

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

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

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

関連リンク

この記事に興味を持ったら"いいね!"を Click
Facebook で IT Search+ の人気記事をお届けします

会員登録(無料)

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

一覧はこちら

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

一覧はこちら

ページの先頭に戻る