我有以下xml文件。
<Objects>
<Object>
<Property Name="Browser">Firefox</Property>
<Property Name="PDF">Adobe Reader</Property>
</Object>
我希望能够使用Powershell脚本更新单词firefox。
这是有效的Powershell脚本,不起作用。
$xmlDoc = [XML](Get-Content "c:\Windows\personalsettings\PersonalSettings.xml")
foreach ($item in $xmlDoc.Objects.Object.Property)
{
$item.Name = 'Chrome'
}
$xmlDoc.Save("c:\Windows\personalsettings\PersonalSettings.xml")
答案 0 :(得分:0)
[xml]$XML = @"
<Objects>
<Object>
<Property Name="Browser">Firefox</Property>
<Property Name="PDF">Adobe Reader</Property>
</Object>
</Objects>
"@
$XML.SelectSingleNode('//Property[@Name="Browser"]')
$XML.SelectSingleNode('//Property[@Name="Browser"]').InnerText = "TEST"
$XML.SelectSingleNode('//Property[@Name="Browser"]')
结果将
> Name #text
> ---- -----
> Browser Firefox
> Browser TEST
您正在寻找的是 XPATH
像这样
//路径或NodeName [@ AttributeName =“属性的值”]
获得节点后,您便可以按照自己的喜好编辑该节点。