Java教程

简单实用Shell命令汇总

本文主要是介绍简单实用Shell命令汇总,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一、统计Nginx日志中访问量最多的IP

cat access.log |awk '{print $1}'|sort|uniq -c|sort  -r

(1)先看下Nginx日志内容格式

我这个是默认日志格式,可以看到访问IP在第一列

[root@localhost logs]# head -n 1 access.log 
192.168.5.2 - - [04/Nov/2021:09:02:11 +0800] "GET / HTTP/1.1" 200 612 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36"

(2)统计结果

[root@localhost logs]# cat access.log |awk '{print $1}'|sort|uniq -c|sort -r
  81700 192.168.5.2
      3 127.0.0.1

awk 默认以空格分隔,所以直接打印第一列。接着进行sort排序,再使用uniq检查重复出现的行,加上-c统计重复出现的行的次数,在列旁边显示。最后因为是要从大到小排序,所以使用sort -r进行倒序

这篇关于简单实用Shell命令汇总的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!