次の2行を含むファイルがあります。 xpoweredBy値がtrueかfalseかを確認する必要があります。よろしくお願いします。
<Connector clientAuth="false" sslProtocol="TLS" xpoweredBy="false" allowTrace="false" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" xpoweredBy="false" allowTrace="false" />
答え1
次のようによく構成されたXML文書があるとします。
<?xml version="1.0"?>
<root>
<Connector clientAuth="false" sslProtocol="TLS" xpoweredBy="false" allowTrace="false"/>
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" xpoweredBy="false" allowTrace="false"/>
</root>
Connector
xpoweredBy
その後、XMLStarletを使用してすべてのノード属性の値を抽出できます。
$ xmlstarlet sel -t -v '//Connector/@xpoweredBy' -nl file.xml
false
false
XPath式は文書全体で各ノードのすべての属性を//Connector/@xpoweredBy
選択し、XMLStarletは改行で区切られた値を印刷します。xpoweredBy
Connector