我有一个结构与此类似的文件:
<log id="1" date="11/11/1999">
<data>
<param id="1" value="30">
<param id="2" value="John">
<param id="3" value="Success">
</data>
</log>
<log id="2" date="11/12/1999">
<data>
<param id="1" value="20">
<param id="2" value="Albert">
<param id="3" value="Failure">
</data>
</log>
我一直在尝试使用grep
or xmllint
以显示only提供特定值(即 30)的日志标记。我的想法是,通过搜索数字 30 或 John,它会检索这些值存在的整个日志条目。所以如果我搜索 30 它将返回:
<log id="1" date="11/11/1999">
<data>
<param id="1" value="30">
<param id="2" value="John">
<param id="3" value="Success">
</data>
</log>
最好的方法是什么?
提前致谢。
您可以使用xpath
查询特定节点
xpath -e '//param[@value="30"]/../..'
这将返回参数值为 30 的节点的父级的父级
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)