First page Back Continue Last page Overview Image

Lösung ohne Threads

import os, re

received_packages = re.compile(r"(\d) received")

status = ("no response",

"alive but losses",

"alive")

for suffix in range(20,30):

ip = "192.168.178."+str(suffix)

ping_out = os.popen("ping -q -c2 "+ip,

"r")

print("... pinging ", ip)

while True:

line = ping_out.readline()

if not line: break

n_received = received_packages.findall(line)

if n_received:

print(ip + ": " + status[int(n_received[0])])

output:

... pinging 192.168.178.20

192.168.178.20: no response

... pinging 192.168.178.21

192.168.178.21: no response

... pinging 192.168.178.22

192.168.178.22: alive

... pinging 192.168.178.23

192.168.178.23: no response

... pinging 192.168.178.24

192.168.178.24: no response

... pinging 192.168.178.25

192.168.178.25: no response

... pinging 192.168.178.26

192.168.178.26: no response

... pinging 192.168.178.27

192.168.178.27: alive

... pinging 192.168.178.28

192.168.178.28: no response

... pinging 192.168.178.29

192.168.178.29: no response