如何使用XmlStarlet将具有属性的元素插入XML文件?
发布时间:2020-12-16 22:58:24 所属栏目:百科 来源:网络整理
导读:源 XML xml block el name="a"92346/el el name="b"lorem/el /block block el name="a"89753/el el name="b"ipsum/el /block/xml 宾语 我想插入 el name =“c” 0 / el每个 block中的元素使用Linux shell脚本: xml block el name="a"92346/el el name="b"lo
源
XML
<xml> <block> <el name="a">92346</el> <el name="b">lorem</el> </block> <block> <el name="a">89753</el> <el name="b">ipsum</el> </block> </xml> 宾语 我想插入< el name =“c”> 0< / el>每个< block>中的元素使用Linux shell脚本: <xml> <block> <el name="a">92346</el> <el name="b">lorem</el> <el name="c">0</el> </block> <block> <el name="a">89753</el> <el name="b">ipsum</el> <el name="c">0</el> </block> </xml> 我可以使用XmlStarlet附加元素: xmlstarlet ed -a '/xml/block/el[@name="b"]' --type 'elem' -n 'el' -v 0 问题 >选择每个< el>的XPath表达式是什么?元素 解决方法
答案
> / xml / block / el [not(@name)]
命令 xmlstarlet ed -a '/xml/block/el[@name="b"]' -t 'elem' -n 'el' -v 0 -i '/xml/block/el[not(@name)]' -t 'attr' -n 'name' -v 'c' (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |