2011年10月17日月曜日

◆Where-Object、Foreach-Objectの簡略表現2(V3)

PowerShell: ◆Where-Object、Foreach-Objectの簡略表現(V3)で簡略表現だと書いていたのですが、牟田口さんに教えていただき簡略表現ではなくパラメータの追加だということが判りました。

dir  |  ? name  -eq  test.txt

というのは、キーワードオペランド表記で書くと、

dir  |  ?  -Property name  -eq  -Value  test.txt

となるようです。

本人は演算子のつもりで使っていたものが、実はスイッチパラーメータだったということです。

スイッチパラメータを演算子と同じ感覚で使えるようにするために、Where-Objectにはすべての(?)演算子に対応したスイッチパラメータが追加になったようです。
ここら辺が牟田口さんのいうところの力技という事なのでしょう。

これを、「よくぞやってくれた」と捉えるのか、「そうまでしてやるか」と捉えるのか、私にはなんとも言えません(^^;

0 件のコメント:

コメントを投稿