2017-04-06 回答
python编程下,检查ip是否能ping通,并且分别导入两个文件,代码如下:
#!/usr/bin/python
#-*- coding:gb18030 -*-
'''
created on 2015-7-7
#判断文件中的ip是否能ping通,并且将通与不通的ip分别写到两个文件中
#文件中的ip一行一个
'''
import time,os
start_time=int(time.time()) #记录开始时间
def ping_test():
ips=open('host.txt','r')
ip_true = open('ip_true.txt','w')
ip_false = open('ip_false.txt','w')
count_true,count_false=0,0
for ip in ips.readlines():
ip = ip.replace('\n','') #替换掉换行符
return1=os.system('ping -n 2 -w 1 %s'%ip) #每个ip ping2次,等待时间为1s
if return1:
print 'ping %s is fail'%ip
ip_false.write(ip) #把ping不通的写到ip_false.txt中
count_false += 1
else:
print 'ping %s is ok'%ip
ip_true.write(ip) #把ping通的ip写到ip_true.txt中
count_true += 1
ip_true.close()
ip_false.close()
ips.close()
end_time = int(time.time()) #记录结束时间
print "time(秒):",end_time - start_time,"s" #打印并计算用的时间
print "ping通数:",count_true," ping不通的ip数:",count_false
ping_test()