使用 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
选项。
我有一个正在维护的 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
选项。