【问题标题】:How to increment value using awk如何使用 awk 增加价值
【发布时间】:2017-08-25 13:27:42
【问题描述】:

我在文件旁边有以下文本:

 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 

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

【问题讨论】:

  • 你可以使用 perl e 标志。 like:perl -i -lpe 's/(\d+)/$1+1/e' file修改数字+1并原地保存

标签: linux shell awk sed


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

【讨论】:

    猜你喜欢
    • 2020-05-01
    • 1970-01-01
    • 2022-08-03
    • 1970-01-01
    • 1970-01-01
    • 2023-03-22
    • 2013-04-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多