[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] IISlog用BAT进行统计分析

向大神们求助:
1.现在想取上面iislog文件中的IP地址,且去重,请用批处理实现?
思路:先去掉前三行,然后根据空格进行分列,取IP字段,然后再去重,最后统计行数

2
文件夹名:IISLOG
下面有好多log文件
格式如下:
u_ex140316.log
u_ex140317.log
u_ex140318.log
等等
现在需要写一个批处理,统计下面的信息
最后想在CountResult.txt中看到如下结果:

u_ex140316.log  总行数:9000行,不同的IP个数:8000
u_ex140317.log  总行数:8870行,不同的IP个数:8400
u_ex140318.log  总行数:7720行,不同的IP个数:8500
u_ex140319.log

思路:
1取系统日期年月日与u_ex120316的(5-10位)进行匹配,发现相等,
就统计该文件的这二个信息(总行数与不同的IP数),并写入到(追加)CrountResult.txt中
2.注:总行数=总行数-4(前面四行不参与统计)

#Software: Microsoft Internet Information Services 7.5
#Version: 1.0
#Date: 2014-03-17 01:41:35
#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status sc-bytes cs-bytes time-taken
2014-03-17 01:41:35 114.141.132.110 POST /sjservice.aspx - 80 - 117.136.8.59 Dalvik/1.6.0+(Linux;+U;+Android+4.2.2;+R821T+Build/JDQ39) 200 0 0 469 321 1029
2014-03-17 01:41:35 114.141.132.110 POST /sjservice.aspx - 80 - 117.136.8.59 Dalvik/1.6.0+(Linux;+U;+Android+4.2.2;+R821T+Build/JDQ39) 200 0 0 469 300 1981
2014-03-17 01:41:35 114.141.132.110 POST /sjservice.aspx - 80 - 211.136.115.24 Dalvik/1.6.0+(Linux;+U;+Android+4.2.2;+R821T+Build/JDQ39) 200 0 0 278 393 15
2014-03-17 01:41:37 114.141.132.110 POST /sjservice.aspx - 80 - 122.85.51.18 Dalvik/1.6.0+(Linux;+U;+Android+4.1.1;+MI+2SC+MIUI/JLB29.0) 200 0 0 469 301 202
2014-03-17 01:41:39 114.141.132.110 POST /sjservice.aspx - 80 - 117.136.8.57 Dalvik/1.6.0+(Linux;+U;+Android+4.0.3;+Lenovo+A658t+Build/S-3-10) 200 0 0 469 308 265
2014-03-17 01:41:45 114.141.132.110 POST /sjservice.aspx - 80 - 211.136.115.24 Dalvik/1.6.0+(Linux;+U;+Android+4.2.2;+R821T+Build/JDQ39) 200 0 0 278 392 15
2014-03-17 01:41:52 114.141.132.110 POST /sjservice.aspx - 80 - 117.136.8.59 Dalvik/1.6.0+(Linux;+U;+Android+4.2.2;+R821T+Build/JDQ39) 200 0 0 469 321 499
2014-03-17 01:42:00 114.141.132.110 POST /sjservice.aspx - 80 - 117.136.8.99 Dalvik/1.6.0+(Linux;+U;+Android+4.2.2;+GT-I9152+Build/JDQ39) 200 0 0 469 303 2090
2014-03-17 01:42:00 114.141.132.110 POST /sjservice.aspx - 80 - 211.136.115.24 Dalvik/1.6.0+(Linux;+U;+Android+4.2.2;+R821T+Build/JDQ39) 200 0 0 278 393 499
2014-03-17 01:42:00 114.141.132.110 POST /sjservice.aspx - 80 - 114.132.243.73 Dalvik/1.4.0+(Linux;+U;+Android+2.3.5;+ZTE+U791+Build/MocorDroid2.3.5) 200 0 0 469 313 811
2014-03-17 01:42:09 114.141.132.110 POST /sjservice.aspx - 80 - 211.140.18.122 Dalvik/1.6.0+(Linux;+U;+Android+4.0.3;+HTC+A320e+Build/IML74K) 200 0 0 473 355 140
2014-03-17 01:42:14 114.141.132.110 POST /sjservice.aspx - 80 - 140.207.223.187 Dalvik/1.6.0+(Linux;+U;+Android+4.2.1;+Coolpad8295M+Build/JOP40D) 200 0 0 469 308 46
2014-03-17 01:42:14 114.141.132.110 POST /sjservice.aspx - 80 - 117.136.8.98 Dalvik/1.6.0+(Linux;+U;+Android+4.2.2;+HUAWEI+G750-T00+Build/HuaweiG750-T00) 200 0 0 469 340 296
2014-03-17 01:42:15 114.141.132.110 POST /sjservice.aspx - 80 - 117.136.8.66 Dalvik/1.6.0+(Linux;+U;+Android+4.2.2;+SM-G3818+Build/JDQ39) 200 0 0 469 303 624

日志是这样的不?
是不是应该去掉前四行呢?你怎么说前三行呀
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

  1. @echo off
  2. (for %%i in (*.log) do (
  3.     gawk "!/^#/{a[$9]}END{print \"%%i 总行数:\" NR-4 \"行,不同的IP个数:\" length(a)}" "%%i"
  4. ))>CrountResult.txt
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表