如何使用AWK|SORT等工具进行日志的统计
详细问题:一份日志文件,标准格式:114.249.18.55i2.baidu.com-30/Nov/2014:16:00:00+0000"GEThttp://i2.bai...
详细问题:
一份日志文件,标准格式:
114.249.18.55 i2.baidu.com - 30/Nov/2014:16:00:00 +0000 "GET http://i2.baidu.com/upload/goods/8975b9d81e7241ed8bc52728eba9ac3.jpg HTTP/1.1" 200 0.000 67937 363 0 - "-"
"-" TCP_HIT
目前要求:
统计这份日志文件中出现IP次数最多的IP 是哪个?并计算出出现了多少次
最好是由高到低排序如:
114.249.18.55 199 (次数)
112.23.22.12 198(次数)
。
。
。
依次类推! 展开
一份日志文件,标准格式:
114.249.18.55 i2.baidu.com - 30/Nov/2014:16:00:00 +0000 "GET http://i2.baidu.com/upload/goods/8975b9d81e7241ed8bc52728eba9ac3.jpg HTTP/1.1" 200 0.000 67937 363 0 - "-"
"-" TCP_HIT
目前要求:
统计这份日志文件中出现IP次数最多的IP 是哪个?并计算出出现了多少次
最好是由高到低排序如:
114.249.18.55 199 (次数)
112.23.22.12 198(次数)
。
。
。
依次类推! 展开
展开全部
BEGIN{
pattern="\\<([0-9]{1,3}\\.){3}[0-9]{1,3}\\>"
OFS="\t"
}
{
while(match($0,pattern))
{
ipadr=substr($0,RSTART,RLENGTH)
ip[ipadr]+=1
$0=substr($0,1,RSTART-1) substr($0,RSTART+RLENGTH)
}
}
END {
for (addr in ip)
print addr ,ip[addr]
}
将上面的代码保存为ip.awk,如日志文件名为ip.log,在终端中执行下面的命令
awk -f ip.awk ip.log | sort -k2 -n -r
即可输出结果
ZESTRON
2024-09-04 广告
2024-09-04 广告
在Dr. O.K. Wack Chemie GmbH,我们高度重视ZESTRON的表界面分析技术。该技术通过深入研究材料表面与界面的性质,为提升产品质量与可靠性提供了有力支持。ZESTRON的表界面分析不仅涵盖了相变化、化学反应、吸附与解吸...
点击进入详情页
本回答由ZESTRON提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询