第八节AWK报告生成器
一,AWK简介
-
其名称得自于它的创始人阿尔佛雷德•艾侯(Alfred Aho)、彼得•温伯格(Peter Weinberger)
和布莱恩柯林(Brian Kernighan)姓氏的首个字母 -
AWK是一个文本处理工具,Linux及Unix环境中现有的功能最强大的数据处理引擎之一
-
现在默认linux系统下日常使用的是gawk
-
这种编程及数据操作语言的最大功能取决于一个人所拥有的知
二,AWK工作原理
-
逐行读取文本,默认以空格或tab键为分隔符进行分隔,将分隔所得的各个字段保存到内建变量
中,并按模式或者条件执行编辑命令; -
sed命令常用于一整行的处理,而awk比较倾向于将一行分成多个"字段"再进行处理;
-
awk信息的读入也是逐行读取的,执行结果可以通过print的功能将字段数据打印显示;
-
在使用awk命令的过程中,可以使用逻辑操作符"&&“表示与、”||“表示或、”!"表示非,还可以进
行简单的数学运算如±*/%^,分别表示加减乘除取余和乘方
三,AWK的基本语法
awk -F 分隔符 'BEGIN{ commands } pattern{ commands } END{ commands } [INPUTFILE...]
3,1 awk的输出
3,1,1 print
语法
print item1, item2, ......
- 各项目之间使用逗号隔开,而输出时则以空白字符分隔;
- item可以是字符串,可以是变量
示例:
awk 'BEGIN{print "easy", "lee", "linux"}'
easy lee linux
awk 'BEGiN{print "easy\nlee\nlinux"}
easy
lee
linux
awk 'BEGIN{SUM = 1; print SUM}'
1
[!note]
在awk命令使用时
字符不加引号,字符表示变量
字符加引号,表示本身