我有一个XML文件,如下所示。我希望使用shell脚本更改每个参数名的默认值位置的值,如下所示:
其中参数name=协议和默认值=tcp,
其中参数名称=端口和默认值= 7223,
其中参数名称=用户名和默认值=test,
示例:
<task-arguments>
<argument name="protocol" is-required="false" default-value="ssl"/>
<argument name="port" is-required="true" default-value="7222"/>
<argument name="username" is-required="true" default-value="admin"/>
</task-arguments>发布于 2016-07-07 13:42:21
使用xmlstarlet:
xmlstarlet ed --inplace -u '/task-arguments/argument[@name="protocol"]/@default-value' -x 'string("tcp")' file.xml
xmlstarlet ed --inplace -u '/task-arguments/argument[@name="port"]/@default-value' -x 'string("7223")' file.xml
xmlstarlet ed --inplace -u '/task-arguments/argument[@name="username"]/@default-value' -x 'string("test")' file.xmlhttps://askubuntu.com/questions/795961
复制相似问题