括弧を使用せずにPowerShellでオブジェクトのプロパティを取得するにはどうすればよいですか?


13

コマンドをかっこで囲み、プロパティアクセス演算子(ドット構文)を使用してプロパティの値を取得する必要があることがよくあります。これはかなり面倒なことです。なぜなら、今いる場所に入力し続けるだけで行の先頭に戻る必要があるからです。パイプされたコマンドのより大きなセットの真ん中にいるとき、それは特に迷惑です。

次のコマンドがある場合

Get-PSProvider FileSystem

Drivesプロパティを取得するには、最初にコマンド全体を括弧で囲む必要があります。

(Get-PSProvider FileSystem).Drives

単一のプロパティの値を取得するより速い方法はありますか?

回答:


14

を使用できますSelect-Object -ExpandProperty <property name>。これは、エイリアスselectを使用して、プロパティ名の一部のみを入力して短縮できます。

Get-PSProvider FileSystem| select -exp Drives

このメソッドのもう1つの利点は、複数のオブジェクトの単一のプロパティにアクセスできることです。

これは何も返しません(更新:これはPowerShell v3で機能します)。

(Get-PSProvider).Drives

ただし、これによりすべてのプロバイダーのドライブが返されます。

Get-PSProvider| select -exp Drives

とても興味深い。訂正していただきありがとうございます。
soandos
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.