こんにちは。これが可能かどうかはわかりません。 Googleで多くのオプションを確認しました。
たとえば、XMLコンテンツを含むhttp URLがある場合:http://server.com/lastBuild/api/xml
内容は次のようになり、<building>false</building>
複数行に現れることがあります。
<action/> <building>false</building> <displayName>mercury_system</displayName> <duration>1606128</duration>
同じhttp URLを解析し、コンテンツをローカルにダウンロードせずに最後に表示される「false」文字列を印刷できますか<building>false</building>
?
答え1
まず、ファイルに「ダウンロード」する必要はありません。パイプラインの一部として一時的にダウンロードできます。
使用xmlstarlet XMLの解析
curl 'http://example.com/lastBuild/api/xml'
| xmlstarlet sel -t -c "//building[last()]/text()"
答え2
sed 代替:
$ curl -s 'https://raw.githubusercontent.com/gevasiliou/PythonTests/master/test.xml' |tac |sed -n '/<building>/{s/<.[^>]*>//g;p;q}'
success