[英]Get awk result greater than X
命令:
grep "redirect=on" access_log | awk '{print $1}' | sort -n | uniq -c | sort -nr | head -3
输出为:
34 3.247.44.149
6 5.218.131.185
3 7.173.135.94
问题:如何仅在NR大于10的情况下输出?在这种情况下:
34 3.247.44.149
我已经尝试过使用$ 1> 10,但是$ 1是IP而不是数字。
谢谢。
与单awk :
awk -F'[[:space:]]+|?' '$8=="redirect=on"{ a[$1]++ }
END{ for(ip in a) if(a[ip] > 10) print a[ip],ip }' access_log
-F'[[:space:]]+|?'
-字段分隔符
$8=="redirect=on"
-仅考虑查询参数为"redirect=on"
a[$1]++
-计算相同的IP地址出现次数
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.