使用 powershell 将子元素添加到配置文件 (XML)



我快疯了。我需要在Powershell中修改此XML文件

<system.diagnostics>
<trace autoflush="attr1" indentsize="attr2">
<listeners>
<add name="attr1" type="attr2" initializeData="attr3" />
<remove name="Default" />
</listeners>
</trace>
<switches>
<add name="attr1" value="attr2" /> 
</switches>
</system.diagnostics>

我需要在"删除"元素之后添加一个新元素:我尝试使用以下代码

$fileXML = 'C:UsersXXXXfile.config'
$contentXML = New-Object XML
$contentXML.Load($fileXML)
$elementXML = $contentXML.SelectSingleNode("//listeners")
$childElementsXML = $contentXML.CreateElement("set")
$elementXML.AppendChild($childElementsXML)
$contentXML.DocumentElement.AppendChild($elementXML)
$contentXML.Save($fileXML)

但它将元素"侦听器"移动到"跟踪"的同一级别。我做错了什么?

<system.diagnostics>
<trace autoflush="attr1" indentsize="attr2">
</trace>
<switches>
<add name="attr1" value="attr2" />
</switches>
<listeners>
<add name="attr1" type="attr2" initializeData="attr3" />
<remove name="Default" />
<set />
</listeners>
</system.diagnostics>

提前感谢您的帮助

删除此行:

$contentXML.DocumentElement.AppendChild($elementXML)

$elementXML(<listeners>节点(已经是需要:)的地方

相关内容

  • 没有找到相关文章

最新更新