linux - 如何使用 awk 增加值

标签 linux shell awk sed

我在一个文件中有以下文本:

 versionName "1.11.0"

每次运行这样的命令时,我都想增加数字:

versionName "1.12.0"
versionName "1.13.0"
versionName "1.14.0"

我正在使用以下命令来增加数字但它替换了数字 不带双引号且递增的文本,如 1,2,3,4。 这是我的命令:

awk '/versionName /{++$NF}1' test > tmp && mv tmp test 

谁能告诉我如何只增加第二位数字

最佳答案

awk '/versionName /{split($NF,v,/[.]/); $NF=v[1]"."++v[2]"."v[3]}1' test > tmp && mv tmp test 

关于linux - 如何使用 awk 增加值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45882545/

相关文章:

linux - 如何在 XCB 中使用关闭按钮退出程序

mysql - 如何测试不同时区的数据库记录?

shell - 检查文件是否存在以及它是否包含特定字符串

linux - 如何从 IP 地址列表中获取第四个八位字节大于 10 的行?

linux - 尝试在 Mandriva 上构建 OS161 时出现 "bmake: no system rules (sys.mk)"

linux - Bash - 在命令中使用变量不起作用

linux - 通过 bash 打印 tsv 文件列中的所有值对

bash - 使用 awk 将大型复杂的一列文件拆分为多列

shell - 错误 => 错误 => SMTP-AUTH : Authentication to smtp. gmail.com:587 失败

windows - 如何递归扩展环境变量?