最初の投稿、私は一日中これを研究してきましたが、私は知恵の終わりです! $Global:CBCGroups という配列があり、$Global:CBCTempHolder という常に変化する変数の値を格納したいと考えています。$Global:CBCTempHolder が変更されるたびに、その内容を += を使用して配列 $Global:CBCGroups に追加する必要があります (つまり:
$Global:CBCGroups += $Global:CBCTempHolder
CBCGroups の列は、CBCGroup と Element です。同じことが $Global:CBCTempHolder にも存在しますが、値はすべての "For" ステートメントで変化します。コードは次のとおりです。
$Global:CBCGroups = @()
for ($z = 0; $z -lt $Global:UniqueCCData.count; $z +=1)
{
If ($Global:UniqueCCData[$z]."AD Group".Contains("CBC_CBC_") -eq $True)
{
$Global:CBCTempHolder = @(0) * 1 | select CBCGroup,Element
$Global:CBCTempHolder.CBCGroup = $Global:UniqueCCData[$z]."AD Group"
$Global:CBCTempHolder.Element = $z
$Global:CBCGroups += $Global:CBCTempHolder
$Global:UniqueCCData[$z]."AD Group" = $Global:UniqueCCData[$z]."AD Group".Replace("CBC_CBC_","CBC.CBC")
}
}
したがって、基本的に何が起こっているかは、次の方法で $Global:CBCGroups に新しい要素を追加するたびです。
$Global:CBCGroups += $Global:CBCTempHolder
$Global:CBCTempHolder の値を変更してから $Global:CBCTempHolder.CBCGroup の値を手動で変更するたびに、代入演算子を使用して行に 5 つの要素を追加し、値を変更することに気付きました。 $Global:CBCTempHolder を再度手動で実行すると、$Global:CBCGroups の最後の 5 つの要素が同じ値に変更されます。$Global:CBCGroups の各要素が、配列に追加された時点からの値を維持する必要があります。
$Global:CBCTempHolder は真の配列ではないことに気付きましたが、新しいリストに追加する必要がある 2 つの名前付き要素が含まれています。どうすればこれを達成できますか?