GNU/Linux >> Belajar Linux >  >> Linux

Pembuatan skrip:apa yang paling mudah untuk mengekstrak nilai dalam tag file XML?

xml2 dapat mengonversi xml ke/dari format berorientasi garis:

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

Cara lain:xmlgrep dan XPath:

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

Kerugian:lambat


Menggunakan 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

Menggunakan 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

Menggunakan 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. Cara Mengekstrak File tar.gz di Linux dengan Menggunakan Command Line

  2. Linux – Sistem File Apa di Linux yang Menyimpan Waktu Pembuatan?

  3. Apa yang Terjadi Saat Saya Mengeksekusi File Di Shell?

  1. Apa Arti Atribut 's' Dalam Izin File ??

  2. Apa Penggunaan Sah dari Perintah `sentuh`?

  3. Apa tujuan dari file .bashrc di Linux?

  1. Ekstrak tar kesalahan file tar.bz2

  2. Apa arti 'rc' di `.bashrc`, dll.?

  3. Sistem file apa di Linux yang menyimpan waktu pembuatan?