afficher le min et le max [Résolu] - Perl - Programmation
Marsh Posté le 30-01-2004 à 10:59:09
Tu utilises quel module pour pinger? Tu devrais jeter un oeil dans la doc de ce module, je suis sur que tu peux renvoyer le min et le max.
EDIT : j'ai dit une connerie sur le roundtriptime
Marsh Posté le 30-01-2004 à 11:09:49
Je suppose que tu utilises le module Net :: Ping. Tu n'as qu'a jeter un oeil dans les sources pour savoir comment retourner le min et le max.
EDIT : en fait tu dois plutot utiliser Win32 :: PingICMP. Apparemment il n'y a pas moyen de retourner le min et le max...
Marsh Posté le 30-01-2004 à 13:42:51
J'utilise Win32 :: PingICMP, sinon pour le min et le max on m'a dis que c t possible mais je vois pas comment ...
Marsh Posté le 30-01-2004 à 15:07:46
On t'a dit que c'etait possible? Et on t'aurait pas dit comment faire aussi?
J'ai regarde la doc du module et je n'ai rien vu a ce sujet. Tu peux encore regarder les sources mais je suis pas sur que ça t'apporte grand chose.
Au "pire" tu utilises un autre module (tu connais http://cpan.org ?) qui permet de recuperer le min/avg/max round-trip time ou bien tu executes une commande ping et tu recuperes la sortie.
Marsh Posté le 30-01-2004 à 15:36:14
Ben ce qui a c que c mon maitre de stage qui ma dis que c t possible mais pas comment on fait lol
sinon je v regarder ce que tu m'a dis.
Je te remercie
Marsh Posté le 03-02-2004 à 14:54:38
impulse> J'ai pas reussi a trouver le module qui permette de trouver le min/avg/max car c'est celui qu'il me faut, tu pourrai pas me filer le lien exact (pas la flemme de chercher, mais en anglais chu pas un boss
Voilà encore merci
Marsh Posté le 03-02-2004 à 15:25:42
mat34fun a écrit : impulse> J'ai pas reussi a trouver le module qui permette de trouver le min/avg/max car c'est celui qu'il me faut, tu pourrai pas me filer le lien exact (pas la flemme de chercher, mais en anglais chu pas un boss |
J'ai pas cherché a vrai dire.
Marsh Posté le 03-02-2004 à 15:48:37
impulse> Lol pas grave en tout cas merci pour ton aide et tes reponses ;-)
Marsh Posté le 18-03-2004 à 11:30:19
moi j'utilise le module Net::ping
$p=Net::Ping->new("icmp",0.4);
$p->hires();
$pk_loss=0;
$avg=0;
for($i=0;$i<20;$i++)
{
($flag,$tps)=$p->ping($ip_host);
if($i==0)
{
$min=$tps;
$max=$tps;
}
else
{
if($tps<$min){ $min=$tps; }
if($tps>$max){ $max=$tps; }
}
$avg=$avg+$tps;
if($flag==0){ $pk_loss++; }
}
$avg=$avg/$nbr*1000;
$a=0;
if($pk_loss==0){ $a=0; }
elsif($pk_loss<5){ $a=1; }
elsif($pk_loss<10){ $a=2; }
elsif($pk_loss<15){ $a=3; }
elsif($pk_loss<20){ $a=4; }
else{ $a=5; }
$min=$min*1000;
$max=$max*1000;
comme ca g aussi le temps de reponse moyen et le nombre de packet loss...
Marsh Posté le 29-01-2004 à 09:30:00
Bonjour,
dans mon programme en perl ou j'effectue des ping et renvoi le temps de reponse, je souhaiterai a chaque fois afficher le temps minimum et maximum, quelle code dois-je mettre pour obtenir ceci ?
Voici le code qui me sert pour pinguer :
$res = ($p->ping("$table[2]","$table[3]" ));
print $p->details->{success}." ".$p->details->{host}." ".$p->details->{ipaddr}." ".$p->details->{roundtriptime}."\n";
Je veux afficher le min et le max de roundtriptime.
Merci d'avance
Message édité par mat34fun le 05-02-2004 à 14:07:29