标签:统计分析 EXE log python CMD ping 192.168 300
一、ping包测试内容写入log文件,bat脚本如下:
@ECHO OFF %~d0 cd %cd%\ start CMD.EXE /C "ping.exe 192.168.1.21 >>1.21.log" -n 300 start CMD.EXE /C "ping.exe 192.168.1.45 >>1.45.log" -n 300 start CMD.EXE /C "ping.exe 192.168.1.77 >>1.77.log" -n 300 start CMD.EXE /C "ping.exe 192.168.1.79 >>1.79.log" -n 300 start CMD.EXE /C "ping.exe 192.168.1.114 >>1.114.log" -n 300 start CMD.EXE /C "ping.exe 192.168.1.120 >>1.120.log" -n 300 start CMD.EXE /C "ping.exe 192.168.1.121 >>1.121.log" -n 300 start CMD.EXE /C "ping.exe 192.168.1.113 >>1.113.log" -n 300 start CMD.EXE /C "ping.exe 192.168.1.116 >>1.116.log" -n 300 start CMD.EXE /C "ping.exe 192.168.1.119 >>1.119.log" -n 300 start CMD.EXE /C "ping.exe 192.168.1.117 >>1.117.log" -n 300
二、对生成的.Log文件进行分析并将数据存储到excel中,代码如下:
import re,os,time import xlwt import os #获取当前文件夹下扩展名为.log的文件名列表 def readFileList(): items = os.listdir(".") newList = [] for names in items: if names.endswith(".log"): newList.append(names) return newList #获取log文件中的统计信息 def readMsg(file): #for i in fileList: f = open(file,'r') fileMsg = f.readlines() ipMatch2 = re.search(r'(([01]?\d?\d|2[0-4]\d|25[0-5]\d)\.){3}([01]?\d?\d|2[0-4]\d|25[0-5]\d)', fileMsg[-2]) if ipMatch2==None: ipMatch = re.search(r'(([01]?\d?\d|2[0-4]\d|25[0-5]\d)\.){3}([01]?\d?\d|2[0-4]\d|25[0-5]\d)',fileMsg[-4]) IP = ipMatch.group() #print(IP) dataPackage = fileMsg[-3:-2][0].strip('\n').replace(" ","") dataPackageClient = dataPackage.split(',')[0].split(':')[1] dataPackageSever = dataPackage.split(',')[1] dataPackageLose = dataPackage.split(',')[2] #print(dataPackage) delayTime = fileMsg[-1].strip('\n').replace(" ","") delayTimeMin = delayTime.split(',')[0] delayTimeMax = delayTime.split(',')[1] delayTimeAvg = delayTime.split(',')[2] #print(delayTime) else: IP = ipMatch2.group() dataPackageClient = 'ping fail' dataPackageSever = None dataPackageLose = None delayTimeMin = None delayTimeMax = None delayTimeAvg = None #print(IP) #print("ping fail") return [IP, dataPackageClient,dataPackageSever,dataPackageLose,delayTimeMin,delayTimeMax,delayTimeAvg] #print('---------------------------------------') #将得到的统计信息写入到excel表格中 def writeData(): newTable = 'ping.xls' wb = xlwt.Workbook(encoding='utf-8') ws = wb.add_sheet('ping', cell_overwrite_ok=True) # 创建表 headData = ['IP', '已发送','已接收','丢失','最短','最长','平均'] for colnum in range(0, 7): ws.write(0, colnum, headData[colnum], xlwt.easyxf('font:bold on')) index = 1 for i in range(len(dataMsg)): #excel的列数 for j in range(0,7): #excel的行数 # print RSSIt[i] ws.write(index, j, dataMsg[i][j]) index += 1 wb.save(newTable) if __name__ == '__main__': fileList = readFileList() print(fileList) dataMsg = [] for file in fileList: dataMsg.append(readMsg(file)) print(dataMsg) writeData()
标签:统计分析,EXE,log,python,CMD,ping,192.168,300 来源: https://www.cnblogs.com/hubangsheng/p/11536129.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。