Saya ingin membaca pom.xml ('Project Object Model' dari Maven) dan mengekstrak informasi versi. Berikut ini sebuah contoh:
<?xml version="1.0" encoding="UTF-8"?><project
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany</groupId>
<artifactId>project-parent</artifactId>
<name>project-parent</name>
<version>1.0.74-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>com.sybase.jconnect</groupId>
<artifactId>jconnect</artifactId>
<version>6.05-26023</version>
</dependency>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>1.5.2</version>
</dependency>
<dependency>
<groupId>com.sun.jdmk</groupId>
<artifactId>jmxtools</artifactId>
<version>1.2.1</version>
</dependency>
<dependency>
<groupId>org.easymock</groupId>
<artifactId>easymock</artifactId>
<version>2.4</version>
</dependency>
</dependencies>
</project>
Bagaimana saya bisa mengekstrak versi '1.0.74-SNAPSHOT' dari atas?
Senang bisa melakukannya menggunakan sed bash scripting sederhana atau awk. Kalau tidak, python sederhana lebih disukai.
SUNTING
Paksaan
Kotak linux ada di lingkungan perusahaan jadi saya hanya bisa menggunakan alat yang sudah diinstal (bukan saya tidak bisa meminta utilitas seperti xml2, tapi saya harus melalui banyak red-tape). Beberapa solusi sangat baik (pelajari beberapa trik baru), tetapi mereka mungkin tidak berlaku karena lingkungan terbatas
daftar xml diperbarui
Saya menambahkan tag dependensi ke daftar asli. Ini akan menunjukkan beberapa solusi hacky mungkin tidak berfungsi dalam kasus ini
Distro
Distro yang saya gunakan adalah RHEL4