假设我有这个xml:
<Root>
<Node size="Foo" />
<Root>为了获得属性值,我运行以下命令:
echo "<Root><Node size='foo' /></Root>" | xmllint -xpath "/Root/Node/@size" -(请注意末尾的- )
这将返回foo。
现在我的问题是如何让xmllint返回元素的名称,即Node**?**
我试过这样做:
echo "<Root><Node size='foo' /></Root>" | xmllint -xpath "/Root/Node/name()" -但这似乎行不通。
发布于 2017-05-30 23:33:44
您使用的XPath需要XPath 2.0,而xmllint只支持XPath 1.0。
将XPath更改为XPath 1.0表达式,
name(/Root/Node)并且您将根据请求回显所选节点Node的名称。
https://stackoverflow.com/questions/44273044
复制相似问题