是否有可能(如果是这样,如何)使用xml_grep从特定元素获取特定属性的值?我似乎只能在标签之间输出信息。
示例:
<eid>
<identity nationalnumber="13021912354" dateofbirth="20130219" gender="male">
<name>Menten</name>
<firstname>Kasper</firstname>
<middlenames>Marie J</middlenames>
<nationality>Belg</nationality>
<placeofbirth>Sint-Truiden</placeofbirth>
<photo>base64-string</photo>
</identity>
</eid>
从'identity'-element
输出'nationalnumber'属性的值(在本例中为:13021912354)答案 0 :(得分:6)
使用xmllint
:
xmllint --xpath 'string(//identity/@nationalnumber)' file.xml
对于debian发行版(或衍生版)xmllint
是libxml2-utils
包的一部分,可以这样安装:
apt-get install libxml2-utils
答案 1 :(得分:2)
我在RHEL6.3上安装的xmllint版本似乎没有这个神奇的-xpath选项。什么版本的xmllint支持此选项?