(8)awk的工作流程
awk工作流程
参考自:man awk
的"AWK PROGRAM EXECUTION"段。
man --pager='less -p ^"AWK PROGRAM EXECUTION"' awk
执行步骤:
1、解析-v var=val.....选项中的变量赋值。 2、编译AWK源代码为AWK可解释的内部格式,包括-v的变量 3、执行BEGIN代码段 4、根据输入分隔符RS读取文件(根据ARGV数组的元素决定要读取的文件),如果没有指定的文件,则从标准输入读取文件,同时执行main代码段。 如果文件名部分指定为var=val的格式,则声明并创建变量,此阶段的变量在BEGIN之后声明,所以BEGIN中不可使用,main代码中可以使用。 每读一条记录 都将设置NR,FNR,RT,$0等变量 (默认)根据输入字段分隔符FS切割字段,将各字段保存到$1、$2。。。。。中 测试main代码段的pattern部分,如果测试成功执行action部分 5、执行END代码段