爱吃大橘子
爱吃大橘子
发布于 2025-06-12 / 2 阅读
0

linux下nginx日志文件如何查找ip排行前几名的地址

注意事项:每个人nginx日志格式设置不一样,打印列位置也需要自己调整

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

第一步打印日志ip列

[root@nginx nginx]# awk -F " " '{print $1}' access.log

显示结果是这样的

对重复ip进行统计

[root@nginx nginx]# awk -F " " '{print $1}' access.log |uniq -c

第三步,针对统计的重复的值进行排序

正向排序

[root@nginx nginx]# awk -F " " '{print $1}' access.log |uniq -c|sort -n

反向排序

[root@nginx nginx]# awk -F " " '{print $1}' access.log |uniq -c|sort -nr