shell命令统计log日志中前10的IP

查看当前log日志文本:

06-Nov-2019 09:40:10.512 INFO http://192.168.1.1 org.apache.catalina.core.ApplicationContext.log No Spring WebApplicationInitializer types detected on classpath
06-Nov-2019 09:40:10.732 INFO http://192.168.1.12 org.apache.catalina.core.ApplicationContext.log Initializing Spring root WebApplicationContext
06-Nov-2019 09:40:15.111 INFO http://192.168.1.37 org.apache.catalina.core.ApplicationContext.log Initializing Spring FrameworkServlet 'cec'
06-Nov-2019 09:59:20.401 INFO http://192.168.1.14 org.apache.catalina.core.ApplicationContext.log No Spring WebApplicationInitializer types detected on classpath
06-Nov-2019 09:59:20.813 INFO http://192.168.1.37 org.apache.catalina.core.ApplicationContext.log Initializing Spring root WebApplicationContext
06-Nov-2019 09:59:25.373 INFO http://192.168.1.2 org.apache.catalina.core.ApplicationContext.log Initializing Spring FrameworkServlet 'cec'
06-Nov-2019 11:19:50.520 INFO http://192.168.1.100 org.apache.catalina.core.ApplicationContext.log No Spring WebApplicationInitializer types detected on classpath
06-Nov-2019 11:19:50.809 INFO http://192.168.1.100 org.apache.catalina.core.ApplicationContext.log Initializing Spring root WebApplicationContext
06-Nov-2019 11:19:54.655 INFO http://192.168.1.198 org.apache.catalina.core.ApplicationContext.log Initializing Spring FrameworkServlet 'cec'
06-Nov-2019 11:35:59.353 INFO http://192.168.1.116 org.apache.catalina.core.ApplicationContext.log No Spring WebApplicationInitializer types detected on classpath
06-Nov-2019 11:35:59.622 INFO http://192.168.1.75 org.apache.catalina.core.ApplicationContext.log Initializing Spring root WebApplicationContext
06-Nov-2019 11:36:03.868 INFO http://192.168.1.18 org.apache.catalina.core.ApplicationContext.log Initializing Spring FrameworkServlet 'cec'
06-Nov-2019 16:09:32.125 INFO http://192.168.1.2 org.apache.catalina.core.ApplicationContext.log No Spring WebApplicationInitializer types detected on classpath
06-Nov-2019 16:09:32.413 INFO http://192.168.1.2 org.apache.catalina.core.ApplicationContext.log Initializing Spring root WebApplicationContext
06-Nov-2019 16:09:36.593 INFO http://192.168.1.16 org.apache.catalina.core.ApplicationContext.log Initializing Spring FrameworkServlet 'cec'
06-Nov-2019 16:09:36.593 INFO http://192.168.1.16 org.apache.catalina.core.ApplicationContext.log Initializing Spring addChildInternal(ContainerBase.java:724) 'cec'
06-Nov-2019 16:09:36.593 INFO http://192.168.1.178 org.apache.catalina.core.ApplicationContext.log Initializing Spring FrameworkServlet 'cec'
06-Nov-2019 16:09:36.593 INFO http://192.168.1.72 org.apache.catalina.core.ApplicationContext.log Initializing Spring addChildInternal(ContainerBase.java:724) 'cec'
06-Nov-2019 16:09:36.593 INFO http://192.168.1.27 org.apache.catalina.core.ApplicationContext.log Initializing addChildInternal(ContainerBase.java:724) FrameworkServlet 'cec'
06-Nov-2019 16:09:36.593 INFO http://192.168.1.16 org.apache.catalina.core.ApplicationContext.log Initializing Spring addChildInternal(ContainerBase.java:724) 'cec'

下面开始分析:这里通过管道(|)将左边部分命令的输出作为右边部分的输入

  1. 使用awk命令,以" "空格拆分,取第4部分,得到带http的IP地址
    在这里插入图片描述
  2. 以’//'再继续拆分,取第二部分 -F参数代表以什么字符进行拆分
    在这里插入图片描述
  3. 使用sort进行排序
    在这里插入图片描述
  4. 合并相同的IP,然后统计个数,uniq -c表示合并相邻的重复记录,并统计重复数。因为uniq -c 只会合并相邻的记录,所以在使用该命令之前需要先排序。
    在这里插入图片描述
  5. 然后根据第一列的数字进行倒序排列, -k 1 表示选择第1个区间进行排序;-r 表示逆序
    在这里插入图片描述
  6. 最后取前10行,head - 10
    在这里插入图片描述

参考链接:LInux命令大全

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值