我正在尝试编写一个脚本,将行中的每个数字减少“1”,但我得到的是所有“0”:
awk '{a=gensub(/([0-9]+)/,"\\1","g",$0);
if(a~/[0-9]+/) {gsub(/[0-9]+/,a-1,$0);}
print $0}'
Run Code Online (Sandbox Code Playgroud)
例如,字符串:
1,2,3,4-7
Run Code Online (Sandbox Code Playgroud)
应该导致:
0,1,2,3-6
Run Code Online (Sandbox Code Playgroud)
相反,我得到:
0,0,0,0-0
Run Code Online (Sandbox Code Playgroud)