统计日志里某时间段内访问最的ip
今天某时间段服务出现异常,需要统计某段时间内请求最多的ip,查看是否有人添加了服务,学习了运维大牛,并且在此记录分享。
命令:
1 | #按时间段统计 |
日志格式:
1 | 10.90.11.10 - 5000 - [27/Nov/2017:17:45:55 +0800] |
- awk ‘ { print $1} ‘ : 取日志每行第一列。也即是10.90.11.10。
- sort : 对ip部分进行排序,如果ip后跟着端口(10.90.11.10:8080),则sort 替换成
cut -d : -f 1 | sort
。 - uniq -c : 打印每重复行出现的次数,并去掉重复。
- sort -n -r :按照重复行出现的次序倒序排序。
- head -n 20 : 取前20位ip。
完结,希望能帮助你!