Out-GridView は選択画面としても使える

Out-GridView を使うとコマンドレットの出力をGUIに表示できるわけだが、PassThru パラメーターを指定することで、オブジェクトの「選択画面」としても機能します。

# 例:カレントディレクトリのファイル一覧を表示して削除するファイルを選ばせる
Get-ChildItem | Out-GridView -PassThru | Remove-Item
# 省略形
gci | ogv -pass | ri

f:id:itasuke:20180103120907p:plain

Ctrl や Shift キーを押しながら行をポチポチ選んでから OK ボタンを押す。すると選んだ項目が Remove-Item に渡されてファイルが削除されるという寸法です。

ちなみに、Windows のリストビューにおいて Ctrl は一行選択、Shift は範囲選択です。

Core にはないよ(追記:2020/01/03)

PowerShell Core 6.x では、なぜか使えなくなっています(コアだから?)。ドキュメントの注意書きによれば PowerShell 7 で復活する予定です。