获取唯一 IP 地址和访问次数

获取唯一 IP 地址和访问次数

我找到了以下代码来查看哪些 IP 地址的点击率最高:

FILE=access.log; 对于 ip in cat $FILE |cut -d ' ' -f 1 |sort |uniq; 执行 { COUNT= grep ^$ip $FILE |wc -l; 如果 [[ "$COUNT" -gt "500" ]]; 然后 echo "$COUNT: $ip"; fi }; 完成

上述代码显示点击次数超过500的IP地址(即通过打开URL访问网站)

但是该脚本太慢了。还有其他代码可以产生相同的输出吗?

另外,如何仅显示 URL 点击率或访问量最高的前 10 个结果?

答案1

你正在重新发明轮子。试试这个:

sed -e 's/\([0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+\).*$/\1/' -e t -e d access.log | sort | uniq -c

相关内容