从命令行更新XML [windows]

我有一些应用程序以 XML格式存储他们的配置文件.对于常规应用程序,使用基于文本的配置,我可以通过使用perl,sed或awk或百万工具中的任何一个来轻松地更新值.我正在寻找类似XML的东西,这将使我能够轻松可靠地执行以下操作:更新值,添加节点或删除节点.

常规文本解析似乎风险太大,因为我对物理文件格式没有真正的保证.

MS Powershell中的XML解析比我在个人遇到的任何其他语言或环境中看到的任何解析机制都要容易.

给定一些XML文件(test.xml):

<root>
  <one>I like applesauce</one>
  <two>You sure bet I do!</two>
</root>

您可以从Powershell内部轻松访问,修改和追加XML文件的节点,值和属性.

# load XML file into local variable and cast as XML type.
$doc = [xml](Get-Content ./test.xml)

$doc.root.one                                   #echoes "I like applesauce"
$doc.root.one = "Who doesn't like applesauce?"  #replace inner text of <one> node

# create new node...
$newNode = $doc.CreateElement("three")
$newNode.set_InnerText("And don't you forget it!")

# ...and position it in the hierarchy
$doc.root.AppendChild($newNode)

# write results to disk
$doc.save("./testNew.xml")

文件testNew.xml中生成的XML:

<root>
  <one>Who doesn't like applesauce?</one>
  <two>You sure bet I do!</two>
  <three>And don't you forget it!</three>
</root>

非常简单!请享用.

Powershell是微软的新外壳,随Windows Server 2008和Windows 7一起提供,可免费下载XP / Vista / Server 2003(也许是其他版本).

一些有用的链接:
Generating XML from other sources
向XML添加元素:
Sample 1,MSDN PowerShell blog
Sample 2,PC-Pro(UK)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念
xml文件介绍及使用
xml编程(一)-xml语法
XML文件结构和基本语法
第2章 包装类
XML入门的常见问题(二)
Java对象的强、软、弱和虚引用
JS解析XML文件和XML字符串详解
java中枚举的详细使用介绍
了解Xml格式
XML入门的常见问题(四)
深入SQLite多线程的使用总结详解
PlayFramework完整实现一个APP(一)
XML和YAML的使用方法
XML轻松学习总节篇