Bash - 将版本号增加 1

Python爱好者

我是 bash 脚本的新手。我需要将构建的版本号提高 1。

例如:- 如果我的版本是1.0.0+1,碰撞它会生成1.0.1+2,即基本上在 之前和之后将数字增加 1 +

这如何在 bash 脚本中完成?

用户1934428

基本接近 Python 风格的 bash 方法是使用正则表达式来分隔版本号和版本字符串的其余部分:

version=1.0.0+1
if [[ $version =~ ^([^+?]*[.])([0-9]*)[+]([0-9]+) ]]
then
  # ... see below
else
  echo Unexpected version string: "$version"
fi

当您有匹配项时,您可以在正则表达式中引用捕获组。在 Python 中,您将使用类似的result.group(1)方法访问组。在 bash 中,为此目的,您有一个预定义的 array BASH_REMATCH,它总是指最近的正则表达式匹配。在我们的例子中,我们会有

 version_string_head=${BASH_REMATCH[1]} # 1.0. 
 version_count_hi=${BASH_REMATCH[2]} # 0
 version_count_lo=${BASH_REMATCH[3]} # 1

其余的都是微不足道的:

new_version_string=${version_string_head}$((version_count_hi + 1))+$((version_count_lo + 1))

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章