您的位置:首页 > 其它

8、批量判断每个IP地址是否ping的通

2016-05-30 16:44 155 查看
'''

功能:通过调用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

’‘’
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: