ping ip多进程处理小程序

    最近,环境维护需要经常需要判断某些服务器上的IP是否可达,由于服务器数量较多,逐一手工ping检查太过繁琐。写个小程序使用。

from multiprocessing import Pool
import os, sys

ping_cfg = "ping_config.txt"

def ping_ip(ip):
    ping_result = os.system('ping -n 2 -w 3 %s > nul' % (ip,))
    if ping_result == 0:
        print "%s success" % (ip,)
    else:
        print "%s fail" % (ip,)

if __name__== '__main__':
    try:
       fp = open(ping_cfg, 'r')
       ip_list = fp.readlines()
       fp.close()
    except:
       print "%s file not exist." % (ping_cfg,)
       sys.exit(1)
    p = Pool()
    for ip in ip_list:
        p.apply_async(ping_ip, args=(ip.strip(),))
    p.close()
    p.join()

猜你喜欢

转载自www.cnblogs.com/linyfeng/p/8949270.html