在文件中找到的每行的增量(第 1 个)数为 1

Increment (1st) number of each line found in file with one

我需要使用 awk/sed/... 增加文件中的数字。

文件:

step0=action_a
step1=action_b
step2=action_c

输出:

step1=action_a
step2=action_b
step3=action_c

我试过:

awk '/step/{ =+1 }' file

但是步数没有递增。

在类似的问题上使用 Ed Morton's answer,你可以这样做:

$ awk -F'[^[:digit:]]+' '{sub(/[[:digit:]]+/,+1)}1' file
step1=action_a
step2=action_b
step3=action_c

这会将第一个数字(即数字序列)替换为匹配的数字加一。

awk 肯定可以做到。然而,使用 vim,您的问题可以很容易地解决。

vim -c "%norm! ^A" file

^A 你按下 Ctrl-V Ctrl-A

然后检查 vim 中更改的文本,如果您满意,然后按 :wq 保存文件并退出。

如果这不是您要找的答案,请告诉我,我会删除答案。