【发布时间】:2014-05-18 18:47:58
【问题描述】:
所以我在 apache 日志文件上运行 bash 脚本,我可以对 IP 地址进行排序并显示最常见的地址,但它显示在页面底部而不是顶部我如何从最高到最低显示它
这是我目前的脚本
cat access_log.txt | awk '{print $1}'| uniq -c |sort -n -k 1| tail
在我的 txt 文件中,我有
10.23.234.0
250.40.56.78
8.45.98.250
10.23.234.0
250.40.56.78
8.45.98.250
10.23.234.0
250.40.56.78
10.23.234.0
250.40.56.78
10.23.234.0
10.23.234.0
输出是
2 8.45.98.250
4 250.40.56.78
6 10.23.234.0
我希望输出是
6 10.23.234.0
4 250.40.56.78
2 8.45.98.250
也希望是打印出旁边的 DNS 名称的最佳方式,例如
66.249.73.234 - - [12/Fegb/2013:12:00:09 +1100] "GET /java/tut/tut.sgml-065.html HTTP/1.1" 200 752 "-" "Mozilla/6.0 (compatible; Googlebot/2.1; +http://www.google.com.html)"
原来如此
66.249.73.234 - http://www.google.com.html
谢谢
【问题讨论】:
-
将
-r传递给您的排序命令以反转排序顺序。
标签: linux bash awk ip-address