14.1 awk程序
awk提供了一种编程语言,使用该语言可以:
定义要保存数据的变量
使用算术和字符串操作符对数据进行运算
使用结构化编程概念
通过抽取数据和按顺序或格式重定位,生成带格式的报告
14.2 awk命令
awk options program file
选项 | 描述 |
-F fs | 指定描述一行中数据字段的文件分隔符 |
-f file | 指定读取程序的文件名 |
-v var=value | 定义awk程序中使用的变量和默认值 |
-mf N | 指定数据文件中要处理的字段最大数目 |
-mr N | 指定数据文件中的最大记录大小 |
-W keyword | 指定兼容模式或警告级别 |
14.3 awk使用
14.3.1 数据字段变量
$0表示整行文本
$1表示第一个数据字段
...
14.3.2 使用命令
awk '{print $0}',打印输出整行
awk'{print $1; print $2}',多个命令
awk ’{$4="Dave"}‘,变量赋值命令
14.3.3 从文件读取程序
awk -F: -f script data,-F:表示分隔符为:,-f script表示脚本来自script文件,data中保存待处理的数据
14.3.4 处理之前和处理之后
awk 'BEGIN {command} {} END{command}'
14.4 高级awk
14.4.1 变量
14.4.2 数组
14.4.3 模式
14.4.4 结构化命令
14.4.5 格式化打印
14.4.6 内置函数
14.4.7 用户定义函数