gawk程序是Unix中原始awk程序的GNU版本。gawk程序让流编辑器迈上了一个新的台阶,它提供了一种编程语言而不只是编辑器命令。在gawk编程语言中,可以完成下面的事情:
(1)定义变量来保存数据;
(2)使用算数和字符串操作符来处理数据;
(3)使用结构化编程概念(比如if-then语句和循环)来为数据处理增加处理逻辑;
(4)通过提取数据文件中的数据元素,将其重新排列或格式化,生成格式化报表;
gawk程序的报告生成能力通常用来从大文本文件中提取数据元素,并将它们格式化成可读的报告。其中完美的例子是格式化日志文件。在日志文件中找出错误行会很难,gawk程序可以让你从日志文件中过滤出需要的数据元素,然后你可以将其格式化,使得重要的数据易于阅读。
1 gawk命令格式
gawk option program file 选项: 描述 -F fs 指定行中划分数据字段的字段分隔符 -f file 从指定的文件中读取程序 -v var=value 定义gawk程序中的一个变量及其默认值 -mf N 指定要处理的数据文件中的最大字段数 -mr N 指定数据文件中的最大数据行数 -W keyword 指定gawk的兼容模式或警告等级
命令行选项提供了一个简单的途径来定制gawk程序中的功能。
gawk的强大之处在于程序脚本,可以写脚本来读取文本行的数据,然后处理并显示数据,创建任何类型的输出报告。
2 从命令行读取程序脚本