47

$Targetこのスクリプトでは、すべてのforeachで呼び出される配列にオブジェクトを追加します。

foreach ($Machine in $Machines)
{
  $TargetProperties = @{Name=$Machine}  
  $TargetObject = New-Object PSObject –Property $TargetProperties
  $Target= @()
  $Target =  $TargetObject
}

$Target = $TargetObject同じオブジェクトと同じになるため、機能していないことはわかっています。

置換する代わりに配列に追加するにはどうすればよいですか?

4

3 に答える 3

102

配列に追加するには、+=演算子を使用するだけです。

$Target += $TargetObject

また、ループの前に宣言する必要があり$Target = @()ます。そうしないと、ループごとに配列が空になります。

于 2012-06-29T17:11:05.577 に答える