首页 > 解决方案 > 使用 bash 查找前 10 个站点的前 10 个请求者

问题描述

所以我有一个 apache.log 文件,我找到了使用以下命令的前十个请求站点:

cat apache.log  | awk '{print  $7} ' | awk '/.php$/' | sort | uniq -c | sort -nr | head -10 

现在我已经找到了前十个站点,我想找到每个站点的最高请求 IP,IP 列在文件中的“1”列中。我怎么做?

标签: bash

解决方案


要在通用日志格式文件中获取前十个请求 ip,您可以执行以下操作:

cut -d' ' -f1 apache.log | sort | uniq -c | sort -n | tail -n 10 | awk '{print $2}'

推荐阅读