文章目录
一、awk概述
1.定义
一种用于处理数据和生成报表的编程语言
2.版本
awk 1977年
nawk 1985年改进
GNU awk(gawk)
与nawk向上兼容 POSIX awk
二、格式组成
1.命令格式
awk [options] '[pattern]{action}' [var1=value1 var2=value2 ...] file ...
awk [options] -f scripts [var1=value1 var2=value2 ...] file ...
模式(pattern)和操作(action)是可选的,如果没有模式,则action应用到全部记录(Record),如果没有action,则输出匹配全部记录,模式和操作可以多次出现,-f也可以多次出现调用多个脚本文件,默认情况下每一行是一个记录(内置变量RS)
2.options部分
- -F Field separator,字段分隔符
- -f script file,脚本文件
- -v variable,声明变量
例:
[root@localhost tmp]#echo | awk -v a=1 -v b=2 '{print a,b}'
1 2
[root@localhost tmp]#echo | awk -v user="alice" '{print user}'
alice
[root@localhost tmp]#echo | awk '{print user}' user="alice" user="marry"
marry
[root@localhost tmp]#echo | awk '{print user}' user="alice" user="marry" user="tom"
tom