'''
功能:通过调用os.system()方法调用cmd命令ping IP,将ping的输出内容存放到
temp.txt的文件中,然后对该文件进行分析,最终得出结果。
时间:2016-05-27
'''
#导入os模块
import os
#定义一个字典用于存放得出的结果
result_dict = {}
#打开IP.txt文件将需要ping的IP地址读取
fp = open(r'IP.txt')
#遍历IP.txt文件,对每一行进行解析处理
for line in fp.readlines():
#处理每行后面的空格
IP = line.strip()
#拼接在CMD中使用的命令,并将中间结果存放在temp.txt文件中
ping = "ping " + IP + r'>G:\workspace\temp.txt'
#调用os.system()方法执行命令
os.system(ping)
#打开temp.txt文件
f = open(r'G:\workspace\temp.txt')
#遍历temp.txt文件,对每行进行解析
for line in f.readlines():
#判断行中是否含有'回复',如果含有则分析改行,否则不进行改行分析
if line.find('回复') != -1:
#将每行按照':'进行分隔
result = line.split(':')
#判断result[1],如果含有'TTL='则说明相机是通的,否则为不通
if result[1].find('TTL=') != -1:
result_dict[IP] = '通'
else:
result_dict[IP] = '不通'
#关闭文件
f.close()
#创建result.txt文件用于存放结果
fq = open(r'result.txt','w')
#遍历字典,并将结果保存到文件中
for key in result_dict.keys():
fq.writelines(key + '\t' + result_dict[key] + '\n')
#关闭文件
fp.close()
fq.close()
‘’‘
IP.TXT文件内容:
192.168.1.1
192.168.1.102
192.168.1.107
’‘’