首页 > 解决方案 > 使用 AWK 递增数字

问题描述

我有一个文件,其中包含以下内容:

export TM_FUNCTION=SUM08619 ;export TM_PARAM_SEQNO=2 ;export PSEUDO_USER=HIHI; . /projects/MSS/LEE1MP/shells/sumh8701.sh  001 DATE:W:0:C:D:1:11:1:N:: DATE:W:0:C:D:1:11:N:1:W: IT ++ ++ 000052233714 DATE:W:0:C:D:1:11:N:N:: 100000 N FMPOST A / &

如果我运行以下值,则返回 100000:

awk -F' ' '{ print $17 }' filename

每次运行时,我想使用脚本将 17 美元增加 1 什么是最好的方法?

标签: shellawk

解决方案


您可以使用

awk '{$17=$17+1}1' filename > tmp && mv tmp filename

每次调用它都会将字段 17 加一。

如果你有 GNU awk,你可以使用

awk -i inplace '{$17=$17+1}1' filename

推荐阅读