加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何使用xmlstarlet在另一个下插入一个新元素?

发布时间:2020-12-16 08:01:06 所属栏目:百科 来源:网络整理
导读:$ vim test.xml?xml version="1.0" encoding="UTF-8" ?config/config$ xmlstarlet ed -i "/config" -t elem -n "sub" -v "" test.xml?xml version="1.0" encoding="UTF-8"?sub/subconfig/config 但是我想要sub成为一个配置的孩子。如何改变xpath parameter o
$ vim test.xml

<?xml version="1.0" encoding="UTF-8" ?>
<config>
</config>
$ xmlstarlet ed -i "/config" -t elem -n "sub" -v "" test.xml
<?xml version="1.0" encoding="UTF-8"?>
<sub></sub>
<config>
</config>

但是我想要sub成为一个配置的孩子。如何改变xpath parameter of -i?

奖金:
是否可以直接插入一个属性,甚至把它设置为一个值?
就像是:

$ xmlstarlet ed -i "/config" -t elem -n "sub" -v ""  -a attr -n "class" -v "com.foo" test.xml
使用-s(或–subnode)而不是-i。关于奖金,您不能直接插入具有属性的元素,但是由于每次编辑操作都按顺序执行,要插入元素,然后添加一个属性:
> xml ed -s /config -t elem -n sub -v "" -i /config/sub -t attr -n class -v com.foo test.xml
<?xml version="1.0" encoding="UTF-8"?>
<config>
<sub class="com.foo"></sub></config>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读