使用tomcat日志对访问ip进行排序

本文介绍了如何使用Linux命令,如awk和cut,对Apache Tomcat日志文件中的IP地址进行数量排序。通过示例展示了具体的操作步骤,包括使用awk输出每行的第一列,然后使用sort和uniq-c累计IP数量,最后再次排序来获取排序后的IP列表。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

tomcat日志记录了ip对网站的访问情况,现在看看怎么用linux命令对那些ip进行数量排序:
日志样本如下:
oracle[~/oracle/rdbms/admin/mysql/10046]$cat /var/www/html/apache-tomcat-7.0.27/logs/localhost_access_log.2013-01-09.txt
21.101.128.28 - - [09/Jan/2013:11:31:17 +0800] "GET /TestPrj/index.jsp HTTP/1.1" 200 1189
21.101.128.28 - - [09/Jan/2013:11:31:23 +0800] "POST /TestPrj/AllServlet HTTP/1.1" 200 -
21.101.128.28 - - [09/Jan/2013:11:31:59 +0800] "GET /TestPrj/ HTTP/1.1" 200 2233
21.101.128.28 - - [09/Jan/2013:11:32:02 +0800] "GET /TestPrj/AllServlet?methodName=1&id=&name= HTTP/1.1" 200 2357
21.101.128.28 - - [09/Jan/2013:11:32:16 +0800] "GET /TestPrj/index.jsp HTTP/1.1" 200 1189
21.101.128.28 - - [09/Jan/2013:11:32:21 +0800] "POST /TestPrj/AllServlet HTTP/1.1" 200 2233
21.101.128.28 - - [09/Jan/2013:11:32:28 +0800] "POST /TestPrj/AllServlet HTTP/1.1" 200 2612
21.101.128.28 - - [09/Jan/2013:11:32:39 +0800] "GET /TestPrj/putin.jsp HTTP/1.1" 200 2233
21.101.128.28 - - [09/Jan/2013:11:32:40 +0800] "POST /TestPrj/AllServlet HTTP/1.1" 200 819
21.101.128.28 - - [09/Jan/2013:11:32:40 +0800] "POST /TestPrj/AllServlet HTTP/1.1" 200 819
21.101.128.28 - - [09/Jan/2013:11:32:47 +0800] "POST /TestPrj/AllServlet HTTP/1.1" 200 2861
21.101.128.28 - - [09/Jan/2013:11:32:53 +0800] "POST /TestPrj/AllServlet HTTP/1.1" 200 1237
21.101.128.28 - - [09/Jan/2013:11:32:56 +0800] "GET /TestPrj/AllServlet?methodName=1&id=&name= HTTP/1.1" 200 2861
21.101.128.28 - - [09/Jan/2013:11:39:08 +0800] "GET /TestPrj/index.jsp HTTP/1.1" 200 1189

日志第一个字段就是ip地址,字段之间分隔符是空格:
1、使用awk:(awk默认分割符就是空格,所以-F选项可以不要)
awk -F ' ' '{print $1}' /var/www/html/apache-tomcat-7.0.27/logs/localhost_access_log.2012-12-27.txt | sort | uniq -c | sort -u
使用awk命令输出每行的第一列 ,-F ‘ ’表示每一行上字符串之间间隔符号是空格,完了用sort排序,接着用uniq -c累计,然后再次用sort  -u对累计结果排序。
2. 、使用cut:(需要注意的是,cut默认的分隔符是<tab>,所以-d选项是必须要的)
cut -d ' ' -f1 /var/www/html/apache-tomcat-7.0.27/logs/localhost_access_log.2012-12-27.txt | sort | uniq -c | sort -u。
原理同上了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值