編集:ここではより明確にPowerShell - 配列からPsObjectプロパティの値を取得するには?
なるように言い換え質問は、作業コードです:
$arr = @(
@('prop0','name0'),
@('prop1','name1'),
@('prop2','name2')
)
$obj = New-Object PsObject
foreach($innerArr in $arr)
{
$obj | Add-Member -NotePropertyName $innerArr[0] -NotePropertyValue $null
}
$obj2 = New-Object PsObject
$count = 0
foreach($innerArr in $arr)
{
$value = 'val' + $count
$obj2 | Add-Member -NotePropertyName $innerArr[1] -NotePropertyValue $value
$count ++
}
for($i=0; $i -lt $arr.Count; $i++)
{
# This is what I want to consolidate into one line
# {
$prop_name = $arr[$i][1]
$obj | Add-Member -NotePropertyName $arr[$i][1] -NotePropertyValue $obj2.$prop_name
# }
}
は私が$prop_name
にプロパティの名前を割り当てずにこれをどのように行うのですか?
$obj
の出力は次のようになります。
PS C:\> $obj
prop0 :
prop1 :
prop2 :
name0 : val0
name1 : val1
name2 : val2
最初の配列は2要素配列の配列です。おそらく、あなたが解決しようとしている問題を正確に説明すると役に立ちます。 –
@Bill_Stewart何ですか?あなたはその投稿を読んだのですか? '$ obj2。$ arr [$ i] [1]'はそれを殺しています –
申し訳ありませんが、わかりませんでした。データ構造にはどんな問題がありますか? –