本文共 2049 字,大约阅读时间需要 6 分钟。
awk '{a[$1]++}END{for(v in a) print v, a[v]}' access.log
awk '{a[$1]++}END{for(v in a){if(a[v] > 100) print v, a[v]}}' access.log
awk '{a[$1]++}END{for(v in a) print v, a[v] | "sort -k2 -nr | head -10"}' access.log
awk '$4 >="[02/Jan/2017:00:02:00" && $4 <="[02/Jan/2017:00:03:00" {a[$1]++}END{for(v in a) print v, a[v]}' access.log
date=$(date -d '-1 minute')awk -v date=$date '$4~date{c++}END{print c}' access.log
awk '{a[$7]++}END{for(v in a) print v, a[v] | "sort -k1 -nr | head -n10"}' access.log
awk '{a[$7]++; size[$7] += $10}END{for(v in a) print a[v], v, size[v]}' access.log
awk '{a[$1" "$9]++}END{for(v in a) print v, a[v]}' access.log
awk '{if($9 ~/404/) a[$1" "$9]++}END{for(i in a) print v, a[v]}' access.log
awk 'FNR==NR{a[$0]; next}{if($0 in a) print $0}' a b
awk 'FNR==NR{a[$0]=1; next}{if(a[$0]!=1) print}' a b
awk 'FNR==NR{a[$1]=$0; next}{print a[$1], $2}' a bzhangsan 20 manlisi 23 womanwangwu 29 man
awk 'BEGIN{FS=":";OFS=":"}{a[$1]=a[$1] $2}END{for(v in a) print v, a[v]}' a
seq 5 | awk 'NR>2{print s}{s=$0}'
echo "hello" | awk -F '"' '{split($0, a, "")}; for(v in a) print a[v]'
echo "hello" | awk '{split($0, a, "''"); for(v in a) print a[v]}'
echo "a.b.c,c.d.e" | awk -F'[.,]' '{for(i=1; i<=NF; i++) a[$i]++}END{for(v in a) print v, a[v]'
awk '{name[$1]++; cost[$1] += $2; number[$1] += $3} END{for(v in name) print v, cost[v], number[v]}'
awk 'BEGIN{max=0}{if($3 > max) max = $3} END{print max}'
awk 'BEGIN{max=0}{a[$0] = $3; if($3 > max) max = $3} END{for(v in a) if(a[v] == max) print v}'
awk '/example-servers1/,/}/{if(NR>2)print s}{s=$2}' a
awk '/example-servers1/,/}/{if(i>1)print s}{s=$2; i++}' a
如果您需要进一步了解AWK脚本的使用方法和具体案例处理方式,欢迎随时交流!
转载地址:http://nixmz.baihongyu.com/