语法:awk语法速查
1. awk语法速查
1.1 基本命令格式
awk '{BEGIN{action} /pattern/ {action} END{action}}' <file> BEGIN{} : 最开始执行 // : 正则 {} : 循环体 END{} : 最后执行 action可以是print之类的 # 打印log文件的第2,4,6行 awk '{print $2, $4, $6}' log # printf awk '{printf("%d, %d, %d, $2, $4, $6")}' log # 打印匹配到root的行 awk '/root/ {print $0}' log # 只打印第一列数据<10的行 awk '$1 < 10 {print $0}' log
1.2 分隔符
#将冒号和逗号也当作分隔符,打印log文件2,4,5列 awk -F ':|,' '{print $2, $4, $6}' log
1.3 awk内置变量
$1、$2 ... $n, 表示数据第0列 $0:表示当前整行,$1表示第一个字段,$2表示第二个字段,$n 表示第n个字段; NR:表示当前已读的行数; NF:表示当前行被分割的列数,NF表示最后一个字段,NF-1 表示倒数第二个字段; FILENAME:表示当前文件的名称 # 打印行号+每行内容 awk '{print NR $0}' log # 打印列数 awk '{print NF}' log # 打印第一列 awk '{print $1}' log # 打印最后一列 awk '{print $NF}' log
语法/awk语法速查.txt · 最后更改: 2024/10/12 10:56 由 user01