Web服务器日志分析

Web服务器日志分析

我有一个网络服务器日志文件,我必须创建一个命令行管道来显示最常访问的十个页面。

然后我必须将它嵌入到 shell 脚本中。

日志格式是这样的:

127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0" 200 2326

答案1

那个怎么样:

grep -oP 'GET \K.*(?=HTTP)' file | sort | uniq -c | sort -rnk1 | head
  • grep则表达式捕获GETHTTP字符串之间的所有内容。
  • sort然后对输出进行排序
  • uniq数他们
  • sort再次降序,数字只有第一个字段。
  • head仅打印前 10 行(访问次数最多的 10 个 URL)

答案2

使用“webalizer”或“awstats”等成熟工具怎么样?您可以处理这两个工具之一的输出。

相关内容