Skip to content

Commit 8fe783c

Browse files
committed
Create check_ping.py
ping值测试
1 parent 22b5bc9 commit 8fe783c

1 file changed

Lines changed: 36 additions & 0 deletions

File tree

check_ping.py

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
#!/usr/bin/python
2+
import multiprocessing
3+
import re
4+
import sys
5+
import commands
6+
import datetime
7+
def pinger(ip):
8+
cmd='ping -c 2 %s' % (ip.strip())
9+
ret = commands.getoutput(cmd)
10+
loss_re=re.compile(r"received, (.*) packet loss")
11+
packet_loss=loss_re.findall(ret)[0]
12+
rtt_re=re.compile(r"rtt min/avg/max/mdev = (.*) ")
13+
rtts=rtt_re.findall(ret)
14+
#rtt.split(["/"])
15+
rtt=rtts[0].split('/')
16+
rtt_min=rtt[0]
17+
rtt_avg=rtt[1]
18+
rtt_max=rtt[2]
19+
print "%s\t\t%s\t\t%s\t\t%s\t\t%s"%(ip,packet_loss,rtt_min,rtt_max,rtt_avg)
20+
21+
def test(ip):
22+
print ip
23+
24+
if __name__ == "__main__":
25+
now=datetime.datetime.now()
26+
file=open('hosts.txt','r')
27+
pool=multiprocessing.Pool(processes=4)
28+
result=[]
29+
print "########%s###########"%now
30+
print "IPADDRSS\t\t\tLOSS\t\tMIN\t\tMAX\t\tAVG"
31+
for i in file.readlines():
32+
if len(i)==1 or i.startswith("#"):
33+
continue
34+
result.append(pool.apply_async(pinger,(i.strip(),)))
35+
pool.close()
36+
pool.join()

0 commit comments

Comments
 (0)