awk 文本处理工具
- 可编程,功能强大
- 可以用来统计,制表等功能
处理方式
- 一次处理一行内容
- 可以对每行进行切片处理
格式
- 命令行格式
awk [options] 'command' file(s)
- 脚本格式
awk -f script_file file(s)
内置参数
- $0 当前整行
- $1 每行第一个字段
- $2 每行第二个字段
- NR 行号
- NF 字符总数
- FILENAME 文件名
- ARGC 命令行参数个数
- ARGV 命令行参数数组
-F 指定分割符,默认空格
awk -F ':' '{print $1,$3, NR}' test.txt // 以: 分割
awk -F ':' '{if ($3>100) print "This Msg"}' test.txt
正则匹配 ~ , 不匹配(!~)
打印第一个字符以m开头的
- BEGIN 行处理前执行
- END 行处理完成后执行
eg:文件夹大小求和
AWK 是一种程序设计语言,语法和C语言相似,把AWK命令写到脚本文件中可以完成更复杂的文本处理