Linux 쉘 스크립트를 사용하여 pom.xml 버전을 변경하는 방법

Linux 쉘 스크립트를 사용하여 pom.xml 버전을 변경하는 방법

나는pom.xml줄이 포함되어 있습니다

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

어디상표스냅샷, 알파, 베타 또는 릴리스일 수 있습니다.

그리고XYZ숫자 버전입니다(예: 1.0.0 또는 1.2.1...).

주어진 매개변수로 이 행을 변경하고 싶습니다. 예를 들어:

현재 버전:<version>1.0.0-snapshot</version>

주어진 매개변수:1.0.1-alpha

산출:<version>1.0.1-alpha</version>

./script.sh newVersion pom.xml

추신: pom.xml에는...로 시작하는 많은 줄이 포함되어 있으므로 변경 사항은 다음 스키마 <version>에 적용되어야 합니다 .<version>x.y.z-tag

답변1

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

script.sh실행 파일( ) 로 저장 chmod +x script.sh하고 다음을 사용하여 실행합니다.

./script.sh <new_version> pom.xml

관련 정보