So ändern Sie eine pom.xml-Version mit einem Linux-Shell-Skript

So ändern Sie eine pom.xml-Version mit einem Linux-Shell-Skript

Ich habe einpom.xmleine Zeile enthalten

<version>x.y.z-tag</version>

WoEtikettkönnte sein: Snapshot, Alpha, Beta oder Release.

Undxyzist eine Versionsnummer wie: 1.0.0 oder 1.2.1 ….

ich möchte diese Zeile durch einen bestimmten Parameter ändern. Zum Beispiel:

bestehende Version:<version>1.0.0-snapshot</version>

gegebener Parameter:1.0.1-alpha

Ausgabe:<version>1.0.1-alpha</version>

./script.sh newVersion pom.xml

PS: pom.xml enthält viele Zeilen, die mit ... beginnen , daher sollten meine Änderungen nach einem Muster <version>angewendet werden :<version>x.y.z-tag

Antwort1

#!/bin/sh            
tag=$(grep '<version>' $2 | sed 's/<version>[^-]*-\(.*\)<\/version>/\1/')
sed -i "s/<version>.*<\/version>/<version>$1-${tag}<\/version>/" $2

Speichern Sie dies unter script.sh, machen Sie es ausführbar ( chmod +x script.sh) und führen Sie es aus mit:

./script.sh <new_version> pom.xml

verwandte Informationen