Ajouter un commentaire

fredericmazue

Quote:
Ha! avec un loop ? tu pourrais me donner un exemple,

Je me demande bien quel est le problème à écrire une boucle, ping ou pas :evil:

Quote:
je te jure que le thread me donne des mots de tête. Oui, mon problème

donc pas besoin de thread, faire les pings les uns après les autres, tout simplement.
Et puis aussi un peu de concision et de simplicité pour lire dans le tube, ça n'est pas plus mal :D

Voici donc (c'est mon jour de bonté) un script qui fait le travail, essayé sur trois machines de mon réseau.
Bon attention, il te reste à mettre en forme les sorties émises. mais faut bien qu'il te reste quelque chose à faire n'est-ce pas ? ;)

import os
import re

results = []

ips = ['192.168.1.51', '192.168.1.52', '192.168.1.53', ]


def print_results():
    for result in results:
        for line in result:
            print line

def analyse():
    for result in results:
        for line in result:
            mo = re.search("loss", line)
            if(mo):
                print "perte d'octets"
        

def build_commande(ip):
    return "ping -n 4" + " " + ip


def do_command(command):
    results.append("---------------------------------")
    tube = os.popen(command, "r")
    results.append(tube.readlines())
    tube.close()


for ip in ips:
    command = build_commande(ip)
    do_command(command)

print_results()
analyse()

Filtered HTML

Plain text

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
 FFFF  X   X  N   N  PPPP       J 
F X X NN N P P J
FFF X N N N PPPP J
F X X N NN P J J
F X X N N P JJJ