Linux命令写在文件中并调用awk -f

Posted 奔跑的金鱼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux命令写在文件中并调用awk -f相关的知识,希望对你有一定的参考价值。

我们在使用awk命令的时候,有时候命令特别长,在终端写出来格式太乱,难以阅读,以下是一个将命令写在文件中,并使用awk调用的具体案例

1.现在有文件file3.txt,内容如下:

image

2.ak2.awk脚本

#打印标题并格式化打印出数量合计
BEGIN { FS="\\t" #设置字段分割符
       printf("%10s %2s %5s	%s\\n\\n",
       "Fruits","Num","Price","Place" )
      }
      { printf("%10s %2d %3d	%s\\n",$1,$2,$3,$4)
       nm = nm + $2
      }
END   { printf("\\n%10s %4d\\n","Total",nm) }

上面这个程序在BEGIN的动作里将字段分割符设置为制表符(\\t),并在输出之前打印标题,第二个printf语句(对每一输入行都会执行),将输出格式化为一张表格,使得每一列都与标题列表头对齐,END打印数量总和。


3.执行程序

awk -f ak2.awk file3.txt

4.输出结果

image



以上是关于Linux命令写在文件中并调用awk -f的主要内容,如果未能解决你的问题,请参考以下文章

linux awk 内置变量使用介绍

Linux 之 awk文本分析工具

Linux awk 命令详解(二) if 分支 数组

shell中,awk命令的$0是啥意思?

linux命令:awk文本处理命令

awk 命令