删除PowerShell JSON对象的子成员的更好方法是什么

删除PowerShell JSON对象的子成员的更好方法是什么,json,powershell,Json,Powershell,我在PowerShell中有一个工作循环,它将从JSON对象中删除子成员(如果存在)。然而,我相信有一种更干净的方法可以做到这一点。你知道怎么做吗 for ($i = 0; $i -lt $destinationReleaseDefinitionJSON.environments.Count; $i++) { $destinationReleaseDefinitionJSON.environments[$i] = $destinationReleaseDefinitionJSON.env

我在PowerShell中有一个工作循环,它将从JSON对象中删除子成员(如果存在)。然而,我相信有一种更干净的方法可以做到这一点。你知道怎么做吗

for ($i = 0; $i -lt $destinationReleaseDefinitionJSON.environments.Count; $i++) {
    $destinationReleaseDefinitionJSON.environments[$i] = $destinationReleaseDefinitionJSON.environments[$i] | Select-Object * -ExcludeProperty queueId
    for ($ii = 0; $ii -lt $destinationReleaseDefinitionJSON.environments[$i].deployPhases.Count; $ii++) {
        $destinationReleaseDefinitionJSON.environments[$i].deployPhases[$ii].deploymentInput = $destinationReleaseDefinitionJSON.environments[$i].deployPhases[$ii].deploymentInput | Select-Object * -ExcludeProperty queueId
    }
}

假设只想删除一个属性,请直接通过
.PSObject.Properties.Remove

foreach($destinationReleaseDefinitionJSON.environments中的env){
$env.PSObject.Properties.Remove('queueId')
foreach($env.deployPhases中的阶段){
$phase.deploymentInput.PSObject.Properties.Remove('queueId')
}
}
“PSObject”。这就是我需要的。谢谢