PowerShellコマンドレット虎の巻

Select-Object

Select-Objectは、オブジェクトを選択するコマンドです。

エイリアスselect

解説

オブジェクトのプロパティを抽出して新しいオブジェクトを作成します。
特定のプロパティのみを含むオブジェクトを作成したり、
オブジェクトの一部を抽出したりすることができます。

構文

(構文)
Select-Object [[-Property] <Object[]>] [<CommonParameters>] Select-Object [<CommonParameters>]
【主要パラメータ】
パラメータ説明
-InputObject オブジェクトパイプラインを介してコマンドレットに送信するオブジェクトを指定する
-Property プロパティ名オブジェクトから選択するプロパティを指定する
(例)-Property Name
-ExcludeProperty プロパティ選択から除外するプロパティを指定する
-ExpandProperty プロパティ指定したプロパティを展開して表示する
-Unique重複を除いた一意のオブジェクトを選択する
-Last 取得数入力オブジェクトの配列の末尾から指定した数のオブジェクトを選択する
(例)-Last 4
-First 取得数入力オブジェクトの配列の先頭から指定した数のオブジェクトを選択する
(例)-First 5
-Skip スキップ数指定した数のオブジェクトをスキップする
(例)-Skip 3
-SkipLast スキップ数最後の指定された数のオブジェクトをスキップする
(例)-SkipLast 2
-Waitコマンドレットの最適化をオフにし、すべてのオブジェクトを生成できるようにする
-Index インデックス指定したインデックス位置にあるオブジェクトを選択する

共通的なパラメータは「共通パラメータ」をご覧ください。

サンプル

Get-Processの結果からName、Id、CPUプロパティのみで構成されたオブジェクトを生成する

$processes = Get-Process $selectedProcesses = $processes | Select-Object -Property Name, Id, CPU $selectedProcesses | Format-Table -AutoSize

最初の5要素のみ抽出したオブジェクトを生成する

$processes = Get-Process $firstFiveProcesses = $processes | Select-Object -First 5 $firstFiveProcesses | Format-Table -AutoSize

重複要素を除いたオブジェクトを生成する

$objects = @( [PSCustomObject]@{ Name = "Apple"; Price = 250 }, [PSCustomObject]@{ Name = "Orange"; Price = 80 }, [PSCustomObject]@{ Name = "Peach"; Price = 400 }, [PSCustomObject]@{ Name = "Apple"; Price = 250 } ) $uniqueObjects = $objects | Select-Object -Property Name, Price -Unique $uniqueObjects | Format-Table -AutoSize

コマンドのヘルプを表示する

Get-Help Select-Object

関連項目