不带 --xpath 选项的 xmllint 字符串
xmllint string without --xpath option
我有一个 xml 看起来像这样:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<customer>
<role>probe</role>
<ipconfig>yes</ipconfig>
<hostname>test</hostname>
<ip>192.168.2.123</ip>
<gateway>192.168.2.1</gateway>
<subnet>255.255.254.0</subnet>
</customer>
我在 CentOS7 下有脚本来获取值:
role="$(xmllint --xpath "string(//role)" "${xml_path}")"
这非常有效。
现在我不得不在CentOS 6环境下使用同样的方法。没有 --xpath 支持,我无法安装它。
实现相同目标最简单最简单的方法是什么?
这可能有效:
role=$(echo "cat /customer/role/text()" | xmllint --shell file.xml | grep -v '^/')
输出到变量 role
:
probe
我有一个 xml 看起来像这样:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<customer>
<role>probe</role>
<ipconfig>yes</ipconfig>
<hostname>test</hostname>
<ip>192.168.2.123</ip>
<gateway>192.168.2.1</gateway>
<subnet>255.255.254.0</subnet>
</customer>
我在 CentOS7 下有脚本来获取值:
role="$(xmllint --xpath "string(//role)" "${xml_path}")"
这非常有效。
现在我不得不在CentOS 6环境下使用同样的方法。没有 --xpath 支持,我无法安装它。
实现相同目标最简单最简单的方法是什么?
这可能有效:
role=$(echo "cat /customer/role/text()" | xmllint --shell file.xml | grep -v '^/')
输出到变量 role
:
probe