根据nginx日志统计ip访问量

根据nginx日志统计ip访问量,由浅入深,逐步讲解。涉及命令 awk、sort、uniq

 

nginx access.log 日志内容截图如下:

 

nginx access.log日志统计第一列 ip

[root@izbp1845cet96se1qmb5ekz logs]# ls
access.log  error.log  nginx.pid
[root@izbp1845cet96se1qmb5ekz logs]# awk '{print $1}' access.log
......
222.189.209.114
222.189.209.114
222.189.209.114
222.189.209.114
222.189.209.114
101.132.109.130
101.201.116.105
121.199.160.108
193.106.29.66
106.15.189.219
159.203.201.156
210.13.80.220
210.13.80.220
198.108.67.48
198.108.67.48
101.200.172.6
......

nginx access.log日志统计第一列 ip ,排序 ,排序不加-n ,则是按 ANSIC码进行排序

[root@izbp1845cet96se1qmb5ekz logs]# awk '{print $1}' access.log |sort
47.99.192.167
47.99.192.167
47.99.192.167
49.144.46.163
5.101.40.82
5.101.40.82
5.101.40.82
5.39.217.107
5.39.217.107
58.144.150.145
58.38.86.89
58.38.86.89
58.38.86.89
58.38.86.89
58.49.32.154
59.110.18.205
59.173.153.120
59.173.153.120
59.36.132.222
59.36.132.222
60.191.38.78
60.191.38.78
60.191.38.78

nginx access.log日志统计第一列 ip ,排序 sort 后 加 -n ,会认为第一个. 前面是第一个数字,和不加-n 排序结果是不一样的

[root@izbp1845cet96se1qmb5ekz logs]# awk '{print $1}' access.log |sort -n
1.30.9.78
1.31.114.163
1.31.114.163
1.31.114.163
1.31.114.163
1.31.114.163
1.31.114.163
1.80.144.35
1.80.144.35
5.101.40.82
5.101.40.82
5.101.40.82
5.39.217.107
5.39.217.107
23.102.51.95
23.102.51.95
37.139.6.161
37.157.255.148
37.157.255.148
39.107.14.208
39.107.14.208
......

nginx access.log日志统计第一列 ip ,排序 sort, 并去重 uniq -c ,去重后,根据访问次数重新排序 sort -n ,实现 top排行,看哪个ip访问量是最大的

uniq 参数 -c 或 --count 在每列旁边显示该行重复出现的次数
sort -n 依照数值的大小排序

sort -n -r 依照数值的大小,以相反的顺序进行排序

[root@izbp1845cet96se1qmb5ekz logs]# awk '{print $1}' access.log |sort | uniq -c | sort -n
      1 101.132.100.6
      1 101.132.101.26
      1 101.132.106.40
      1 101.132.109.130
      1 101.132.188.111
      1 101.132.70.61
      1 101.200.0.10
      1 101.201.116.10
      1 101.201.124.1
      1 101.201.140.152
      1 101.201.140.157
      1 101.201.148.26
      1 101.201.196.112
      1 101.201.220.111
      1 101.249.54.213
      1 101.37.160.156
      1 101.37.252.1
      1 101.68.140.12
      1 106.14.115.254
......
     78 176.32.33.145
     84 172.105.218.208
     84 218.91.49.122
     93 116.232.144.95
    104 80.82.78.50
    182 223.104.146.132
    186 116.233.29.18
    393 47.101.50.252

sort -n -r  加上 -r 实现倒序排序

[root@izbp1845cet96se1qmb5ekz logs]# awk '{print $1}' access.log |sort | uniq -c | sort -n -r
    393 47.101.50.252
    186 116.233.29.18
    182 223.104.146.132
    104 80.82.78.50
     93 116.232.144.95
     84 218.91.49.122
     84 172.105.218.208
     78 176.32.33.145
     69 198.108.67.48
     55 222.189.209.114
     52 115.172.95.54
     51 218.91.149.186
     51 211.161.248.135
     33 60.191.38.78
     27 115.174.4.85
     25 120.78.231.236
     23 77.247.108.71
     23 47.96.254.10
     23 47.100.64.9
     23 118.31.244.58
     23 106.15.76.85
     22 106.15.76.92
......

对上面结果,在命令行窗口实现上下翻页查看效果 可以通过管道加  less

[root@izbp1845cet96se1qmb5ekz logs]# awk '{print $1}' access.log |sort | uniq -c | sort -n -r | less
    393 47.101.50.252
    186 116.233.29.18
    182 223.104.146.132
    104 80.82.78.50
     93 116.232.144.95
     84 218.91.49.122
     84 172.105.218.208
     78 176.32.33.145
     69 198.108.67.48
     55 222.189.209.114
     52 115.172.95.54
     51 218.91.149.186
     51 211.161.248.135
:

使用 上下箭头 PgUp 和 PgDn 进行翻页查看

 

根据nginx日志统计ip访问量 ,最终命令:

[root@izbp1845cet96se1qmb5ekz logs]# awk '{print $1}' access.log |sort | uniq -c | sort -n -r
    393 47.101.50.252
    186 116.233.29.18
    182 223.104.146.132
    104 80.82.78.50
     93 116.232.144.95
     84 218.91.49.122
     84 172.105.218.208
     78 176.32.33.145
     69 198.108.67.48
     55 222.189.209.114
     52 115.172.95.54
     51 218.91.149.186
     51 211.161.248.135
     33 60.191.38.78
     27 115.174.4.85
     25 120.78.231.236
     23 77.247.108.71
     23 47.96.254.10
     23 47.100.64.9
     23 118.31.244.58
     23 106.15.76.85
     22 106.15.76.92
......

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wudinaniya

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值