2

1 つ以上の要素を返すことができるコマンドレットを使用しています。

PS C:\Users\admin> $x = Get-myObjects
PS C:\Users\admin> $x


ComputerName               : test-2
Description                : n/a
Id                         : cbcb1ece-99f5-4478-9f02-65a622df8a98
IsActive                   :
MinNum                     : 0
Name                       : scom-test2-mp
modeType                   : 1
PSComputerName             :

長さ属性を使用すると、何も得られません。

PS C:\Users\admin> $x.length
PS C:\Users\admin>

それでも、Get-myObjectsコマンドレットが 2 つ以上を返す場合、それはコレクションであり、.length属性を取得できます。

Get-myObjects コマンドレットが 1 つのオブジェクト値に対して 1 つのオブジェクトを返す場合、.length を機能させるにはどうすればよいですか?

4

3 に答える 3

3

コマンドレットの戻り値を変数に割り当てるときは、いつでも結果を配列に強制できます。

$x = @(Get-myObjects)
$x.Length

または「オンデマンド」:

$x = Get-myObjects
@($x).Length
于 2013-08-03T00:01:38.337 に答える
2

Measure-Objectコマンドレットを使用します。エレガントな方法でカウントを取得することはできないため、ここでは少し扱いに​​くいです。

$x = Get-myObjects
$x | measure-object

出力:

カウント : 1
平均 :
合計 :
最大 :
最小 :
プロパティ :

カウントだけが必要な場合:

$x | measure-object | select -ExpandProperty Count

出力:

1

于 2013-08-03T06:31:13.537 に答える