awk命令
Posted godlove
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了awk命令相关的知识,希望对你有一定的参考价值。
awk 根据定位到到数据行处理其中到分段,用于数据切片
awk ‘BEGINEND‘ # 开始和结束
awk ‘/Running/‘ # 正则匹配
awk ‘/aaa/,/bbb/‘ # 区间选择
awk ‘$2~/xx/‘ # 字段匹配
awk ‘NR==2‘ # 取第二行
awk ‘NR>1‘ # 去掉第一行
‘$9~/500/‘ /tmp/nginx.log #默认以空格为分隔符,匹配第九位数据500
awk ‘$9!~/200/‘ /tmp/nginx.log # 匹配第九位状态码非200的数据
awk 字段数据处理
-F 参数指定字段分隔符
BEGINFS="_" 也可以表示分隔符
$0 代表原来的行‘
$1 代表第一个字段
$N 代表第N个字段
$NF 代表最后一个字段
awk ‘$9!~/200/print $9‘ /tmp/nginx.log 找出第九个字段不等于状态码为200的字段,并打印出来
awk ‘$9!~/200/print $9‘ /tmp/nginx.log |sort | uniq -c 找出符合条件的字段后,进行排序去重
awk ‘$9=="404"‘ /tmp/nginx.log # 只查询符合条件的结果
seq 10 | awk ‘/^..$/‘
10
seq 10 | awk ‘/^3$/‘
3
seq 20 | awk ‘/15/,/19/‘
15
16
17
18
19
seq 20 | awk ‘NR==8‘ 打出行数
8
以上是关于awk命令的主要内容,如果未能解决你的问题,请参考以下文章