我试图找出哪些 IP 地址最常访问服务器。我收到了这个令人惊讶的输出uniq
:
$ cat access_log | awk '{print $1}' | uniq -c | sort -bnr | head
26 73.23.5.25
25 73.23.5.25
24 73.23.5.25
23 73.23.5.25
23 73.23.5.25
23 73.23.5.25
22 73.23.5.25
21 73.23.5.25
19 73.23.5.25
18 73.23.5.25
为什么这些地址不被视为同一地址uniq
?我查看了源文件,没有疯狂的选项卡或其他空白。这些是相当常见的 Apache 访问日志。
答案1
编辑:您需要在运行 uniq 之前进行排序,否则它将无法工作:
cat access_log | awk '{print $1}' | sort | uniq -c | sort -bnr | head