我想编辑一个XML程序的配置文件:
<software>
<settings>
...
<setting name="local directory" type="string">/home/username/</setting>
...
</settings>
</software>
Run Code Online (Sandbox Code Playgroud)
从bash脚本中执行此操作的最简单方法是什么?
谢谢
小智 20
使用xmlstarlet:
xmlstarlet val -e file.xml
xmlstarlet ed -u "//settings/setting/@name" -v 'local directory2' file.xml
xmlstarlet ed -u "//settings[1]/setting/@name" -v 'local directory2' file.xml
# edit file inplace
xmlstarlet ed -L -u "//settings/setting/@name" -v 'local directory2' file.xml
Run Code Online (Sandbox Code Playgroud)
Bri*_*new 11
根据您的要求,您可能希望使用一些特定于XML的工具(处理字符编码,维护XML格式良好等).您可以使用常规的面向行的工具,但除非您小心(或做一些简单的事情),否则您可以轻松创建不符合要求的XML.
我使用XMLStarlet命令行集.它是一组用于专门解析/操作XML的命令行实用程序.
| 归档时间: |
|
| 查看次数: |
14938 次 |
| 最近记录: |