#执行后要处理的语句
}'
其中BEGIN为处理文本前的操作,一般用于改变FS,OFS,RS,ORS等,BEGIN部分完成之后,awk读取第一行输入,并将第一行的数据填入0,1,2,.....正式处理是一个内建的循环,每一次循环读取一行数据(默认RS为换行符),pattern{…}部分可以有多个,它可以使用正则匹配/RE/,算术运算符>,<,…,逻辑运算符&&,||等,当pattern没有时...,也即不需要匹配条件,后面的动作{…}会在每一行都执行.
awk 内置变量
变量 用法
$0 当前记录(这个变量中存放着整个行的内容)
$1-$n 当前记录的第n个字段,字段间由FS分隔
FS 输入字段分隔符...RS 输入的记录分隔符,默认为换行符
OFS 输出字段分隔符,默认为空格
ORS 输出的记录分隔符,默认为换行符
FILENAME 当前输入文件的名字
awk运算符合正则匹配
算术运算符
awk算术运算符...~/reg/ 第一个字段不匹配
NR >=2 从第二行开始处理
awk 整则可以和比较运算符结合使用,以便处理更复查的匹配
awk技巧
awk使用的RE为ERE
如果在BEGIN中设置了OFS,只有$0