使用 SED/AWK 增加 PKGBUILD 文件中变量的值

Use SED/AWK to increment value of a variable in a PKGBUILD file

我有一个正在维护的 PKGBUILD 文件(用于 AUR)。它有一个值 'pkgrel',我在每次构建包之前将其递增 1(手动)。

总而言之,如果我想第六次构建包,我会手动将值设置为

pkgrel=6

我还为其他进程编写了 bash 脚本。我被困在这里。请指导我如何通过任何 sed/awk 表达式增加 pkgrel 的值。我想要那样,也就是说,我第 7 次构建包,SED/AWK 表达式应该将值设置为 7

pkgrel=7

在我 运行 我的脚本中的 makepkg 命令之前。

我不限制 sed/awk 的答案,如果其他方法有效,请指导我。唯一的条件是它应该是 bash.

假设 pkgrel 是其行中的第一个单词,并且它周围或 = 周围没有空格,您可以使用以下 awk 命令打印更新的 PKGBUILD .

awk -F= -v OFS== '=="pkgrel" {++} 1' PKGBUILD 

要就地更新文件,您可以使用 GNU awk 的 -i inplace 选项。