我在尝试使用PowerShell重命名XML节点。例如:
<configuration>
<desktops>
<name>PC001</name>
<domain>CORP</domain>
</desktops>
<laptops>
<name>PC002</name>
<domain>CORP</domain>
</laptops>
</configuration>
如何使用PowerShell重命名XML节点?
我想将第一个<name>
标记重命名为<PC1name>
(分别为</PC1name>
)。这里是我有,到目前为止:?
$InputFile = "NetworkConfigs.xml"
$xml = [xml](get-content $InputFile)
$root = $xml.get_DocumentElement();
#replace the node
$ root.desktops.name`
$xml.Save($InputFile)
我不知道如何更换带别的东西的标签。提示?
感谢codepoke。我会给这个镜头。 – craveness 2011-06-15 06:10:33
这主要工作,我需要使用一个文件作为输入和输出。所以,我用'$ InputFile'替换了'$ InputText',并应用了使用'$ xml.OuterXML'显示的更改。但是,如何保存XML文件?我尝试了'$ xml.Save($ InputFile)',但这不起作用。 – craveness 2011-06-15 17:39:39
错误应该告诉你保存中出现了什么问题。文件是否被锁定?或者$ xml对象没有Save方法? (如果是这样的话,你需要得到一个System.Xml.XmlDocument的句柄。)关键是要仔细观察错误信息并查看适当的对象文档。 – codepoke 2011-06-19 17:25:49