shell - 使用 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 什么是最好的方法?
解决方案
您可以使用
awk '{$17=$17+1}1' filename > tmp && mv tmp filename
每次调用它都会将字段 17 加一。
如果你有 GNU awk
,你可以使用
awk -i inplace '{$17=$17+1}1' filename
推荐阅读
- flutter - 颤振中的设备信息
- java - API调用错误:5000ms内没有观察到任何项目或终端信号(并且没有配置回退)
- intellij-idea - Intellij 社区版是否允许设置 VM 选项?
- python - ModuleNotFoundError:没有名为“tensorflow_io”的模块
- c# - 如何在 UWP 绑定中设置 ConvertParameter
- validation - MuleSoft - 如何验证 JSON 中字段的存在?
- python - 使用 Jar 文件打包 Python 脚本
- python - python await 是否与 event_loop.run_until_complete 函数相同?
- python - 如何从目录访问已经上传的音频文件并在 Flask 中创建它的频谱图
- windows-services - 无法使用 Process.Start() 启动 bat 文件