1

そのため、以前はXPathを使用してXMLシートからデータを取得し、それを印刷して次のようにしました。

プロパティ1-プロパティ2-プロパティ3

そのように表示されます。今、私はLinuxBashでも同じことをしたいと思います。Linux Bashの使い方を少し知っていて、その一部を印刷することができましたが、必要とは言えませんでした。

XMLシートがどのように表示されるかの例を次に示します。

<xml>
<content>
<items>
<item>
<name>I need this information</name>
<item>

<lists>
<list>
<name>I DONT need this information</name>
</list>

<hello>
<name> I need this information also</name>
<hello>

名前のインスタンスが3つあるため、単にcatxmlfile|を使用できないことに注意してください。名前のある場所が複数あるため、grep "name"

ありがとう!

4

1 に答える 1

3

XMLStarletを使用して、クエリをXPathとして実行します。

xmlstarlet sel -t \
  -m //item/name  -v . \  # print first item name
  -o ' - ' \              # print intermediate dash
  -m //hello/name -v . \  # print second item
  -n                      # print trailing newline

また、の一部の非常に新しいバージョンにxmllintは、--xpathクエリの実行に使用できる引数があります。

于 2012-07-20T18:22:46.473 に答える