[英]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.