GNU/Linux >> Linux の 問題 >  >> Linux

スクリプト:XML ファイルのタグの値を抽出するのに最も簡単なものは何ですか?

xml2 は xml を行指向形式に変換できます:

xml2 < pom.xml  | grep /project/version= | sed 's/.*=//'

その他の方法:xmlgrep と XPath:

xmlgrep --text_only '/project/version' pom.xml

短所:遅い


python の使用

$ python -c 'from xml.etree.ElementTree import ElementTree; print ElementTree(file="pom.xml").findtext("{http://maven.apache.org/POM/4.0.0}version")'
1.0.74-SNAPSHOT

xmlstarlet の使用

$ xml sel -N x="http://maven.apache.org/POM/4.0.0" -t -m 'x:project/x:version' -v . pom.xml
1.0.74-SNAPSHOT

xmllint の使用

$ echo -e 'setns x=http://maven.apache.org/POM/4.0.0\ncat /x:project/x:version/text()' | xmllint --shell pom.xml | grep -v /
1.0.74-SNAPSHOT

Linux
  1. コマンドラインを使用してLinuxでtar.gzファイルを抽出する方法

  2. Linux – Linux上のどのファイルシステムが作成時間を保存しますか?

  3. シェルでファイルを実行するとどうなりますか?

  1. inotify を使用する適切な方法は何ですか?

  2. tar.bz2 ファイル エラーを tar で抽出する

  3. `.bashrc` などの 'rc' は何を意味していますか?

  1. Windows の Linux の File コマンドに相当するものは何ですか?

  2. 作成時刻を格納する Linux のファイル システムはどれですか?

  3. `hostname` のデフォルトのファイルは何ですか?