Bonjour, je suis en train de developpez un outil de looking glass. J'ai choisi le perl pour faire les connexions telnets et envoyer des commandes sur les appareils. Ca marche plutot pas mal pour le moment à part une petite chose que j'aimerai ameliorer.
Lorsque j'envoi une commande ping via @res=telnet->cmd("ping 192.168.1.1 count 5"); il attend de terminer la commande avant d'afficher le resultat.
J'ai vu sur un looking glass en perl (je sais plus ou) une reponse en temps reel ou il affiché ligne par ligne le resultat, comme lorsque l'on fait un ping sur une machine.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 for($i=0;$i<@res;$i++) { print @res[$i]."<br />"; }
J'ai donc penser au thread en faisant :
D'une part ca n'affiche rien et de toute facon ca resoudrai pas mon pb je pense.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 $thr = threads->new(\&execute_cmd,"ping 192.168.1.1 count 5"); sub execute_cmd { print "Dans le thread ".@_[0]."<br />"; @DonneesRenvoyees=$telnet->cmd(@_[0]); for($i=0;$i<@DonneesRenvoyees;$i++) { print @DonneesRenvoyees[$i]."<br />"; } }
Alors comment faire ? Avez vous une idée car moi je seche un peu là ! ! !
D'avance merci. Cordialement,
Damien
Partager