Глубокое копирование PSObject

У меня есть скрипт PowerShell, в котором я делаю следующее

$somePSObjectHashtables = New-Object Hashtable[] $somePSObject.Length;
$somePSObjects = Import-CSV $csvPath
0..($somePSObject.Length - 1) | ForEach-Object {
    $i = $_;
    $somePSObjectHashtables[$i] = @{};
    $somePSObject[$_].PSObject.Properties | ForEach-Object {
        $somePSObjectHashtables[$i][$_.Name] = $_.Value;
    }
}

Мне нужно сделать это, потому что я хочу сделать несколько отдельных копий данных в CSV, чтобы выполнить несколько различных манипуляций. В некотором смысле я выполняю «INNER JOIN» в результирующем массивеPSObject, Я могу легко перебрать$somePSObjectHashtables сForEach-Object и позвонитьHashtable.Clone () на каждом члене массива. Я могу тогда использоватьNew-Object PSObject -Property $someHashTable[$i] чтобы получить глубокую копию PSObject.

У меня вопрос, есть ли какой-нибудь более простой способ сделать глубокую копию без посредника Hashtable?

Ответы на вопрос(1)

Ваш ответ на вопрос