我正在处理像
这样的XML文件<bookstore>
<book category="cooking">
<title lang="en">Everyday Italian</title>
<author>adc</author>
<year>2005</year>
<price>30.00</price> </book>
<book category="children">
<title lang="en">Harry Potter</title>
<author>xyz</author>
<year>2005</year>
<price>29.99</price> </book>
</bookstore>
在linux上使用xmlstarlet
xmlstarlet sel -t -m 'bookstore/author [1]' -n books.xml
将输出设为"adc"
,但如果我已知道该值,我该如何找到该字段?
就像我知道作者标签的值为"adc"
。
我应该如何找到bookstore/author [x]
x
?
答案 0 :(得分:0)
经过一番搜索后,我找到了答案,并将其留在了其他人身上,偶然发现了
要在xmlstarlet中按字段选择值
xmlstarlet -t -c 'bookstore/book[author="adc"]' -n books.xml
这里书店/书是包含作者的节点的完整路径 [author = value]用于仅选择作者具有特定值的节点 books.xml是你的xml文件
我相信其他人可以更好地解释,但希望你能找到一些帮助