我有一个包含以下信息的清单文件:
Bundle-ManifestVersion: 2
Bundle-Name: Runtime (2.7)
Bundle-SymbolicName: Runtime;singleton:=true
Bundle-Version: 1.0.5.qualifier
我需要通过bash命令更新它。是否可以使用sed命令执行此操作。 我需要将bundle-version更新为这样:
Bundle-Version: 1.0.6.qualifier
现在我能够这样做:
sed -i '' "s/Bundle-Version: 1.0.5.qualifier/Bundle-Version: 1.0.6.qualifier/g" MANIFEST.MF
但我希望找到一种不替换整行的方法,只需更换版本。
答案 0 :(得分:0)
您不必更换整行,您可以这样做:
s/1\.0\.5\.qualifier/1.0.6.qualifier/
只是替换该行的那一部分。但是,这将替换任何行上的字符串,而不仅仅是Bundle-Version
行。您可以使用地址表达式来限制它:
/^Bundle-Version:/s/1\.0\.5/1.0.6/
无需使用g
修饰符,因为版本号只需要在行上替换一次。