我需要使用awk / sed / ...将数字增加到文件中。
文件:
step0=action_a
step1=action_b
step2=action_c
输出:
step1=action_a
step2=action_b
step3=action_c
我试过了:
awk '/step/{ $2=$2+1 }' file
但步骤编号不会增加。
答案 0 :(得分:2)
在类似的问题上使用Ed Morton's answer,您可以这样做:
$ awk -F'[^[:digit:]]+' '{sub(/[[:digit:]]+/,$2+1)}1' file
step1=action_a
step2=action_b
step3=action_c
这将替换匹配数加1的第一个数字(即数字序列)。
答案 1 :(得分:1)
awk肯定可以做到。但是,使用vim,您的问题可以很容易地解决。
vim -c "%norm! ^A" file
^A
按Ctrl-V Ctrl-A
然后检查vim中已更改的文本,如果您满意,则按:wq
保存文件并退出。
如果这不是您要找的答案,请告诉我,我会删除答案。