j'ai essayé la commande suivante sans succèsImpossible de comparer les temps de ping sur fly
sdiff <(ping www.nato.int) <(ping www.reuters.com)
Est-il possible d'avoir une comparaison en temps réel entre les temps de ping?
j'ai essayé la commande suivante sans succèsImpossible de comparer les temps de ping sur fly
sdiff <(ping www.nato.int) <(ping www.reuters.com)
Est-il possible d'avoir une comparaison en temps réel entre les temps de ping?
Habituellement je viens d'ouvrir deux xterms côte à côte et exécuter ping dans chaque. Ou dans un terminal "ping host1 & ping host2 &"
fping -e vous donnera la latence à une liste d'hôtes en une seule fois. Donc, vous pouvez simplement faire: regarder fping -e www.google.com www.yahoo.com www.kernel.org
Tout le monde n'a pas regarder, mais vous pouvez le faire (et vous pouvez voir l'historique) : tandis que:; faire la date; fping -e www.google.com www.yahoo.com www.kernel.org; dormir 1; fait
La sortie est toujours laid, et pas tout le monde a Fping installé soit ..
Voici un début si vous voulez produire une sortie à la recherche décent. Donnez-lui simplement une liste d'hôtes en tant qu'arguments.
#!/usr/bin/perl
use strict;
use warnings;
use POSIX;
for(;;) {
print strftime("%T:", localtime);
foreach my $host (@ARGV) {
my $a=`ping -c 1 $host`;
my $latency;
if($a =~ /rtt.* =\s+([\d.]+)\//s) {
$latency=$1;
} else {
$latency="(dropped)";
}
print "$host:$latency\t";
}
print "\n";
sleep(1);
}
Merci pour votre réponse! J'accepte la réponse parce qu'elle est la plus indépendante de la plateforme. –
Que diriez-vous:
watch 'ping -c 4 www.google.com; echo; ping -c 4 www.yahoo.com'
donne des résultats comme celui-ci:
Every 2.0s: ping -c 4 www.google.com; echo; ping -c 4 www.yahoo.com Tue Apr 7 13:57:47 2009 PING www.l.google.com (74.125.39.105) 56(84) bytes of data. 64 bytes from fx-in-f105.google.com (74.125.39.105): icmp_seq=1 ttl=248 time=8.06 ms 64 bytes from fx-in-f105.google.com (74.125.39.105): icmp_seq=2 ttl=248 time=8.47 ms 64 bytes from fx-in-f105.google.com (74.125.39.105): icmp_seq=3 ttl=248 time=8.37 ms 64 bytes from fx-in-f105.google.com (74.125.39.105): icmp_seq=4 ttl=248 time=8.19 ms --- www.l.google.com ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 2999ms rtt min/avg/max/mdev = 8.061/8.276/8.478/0.196 ms PING www-real.wa1.b.yahoo.com (87.248.113.14) 56(84) bytes of data. 64 bytes from f1.us.www.vip.ird.yahoo.com (87.248.113.14): icmp_seq=1 ttl=56 time=43.3 ms 64 bytes from f1.us.www.vip.ird.yahoo.com (87.248.113.14): icmp_seq=2 ttl=56 time=44.3 ms 64 bytes from f1.us.www.vip.ird.yahoo.com (87.248.113.14): icmp_seq=3 ttl=56 time=42.4 ms 64 bytes from f1.us.www.vip.ird.yahoo.com (87.248.113.14): icmp_seq=4 ttl=56 time=43.0 ms --- www-real.wa1.b.yahoo.com ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 2999ms rtt min/avg/max/mdev = 42.422/43.277/44.301/0.728 ms
Avez-vous besoin de soustraire les temps de ping? Est-ce que ça doit être côte à côte (un peu ennuyeux)? Quel est votre format de sortie idéal?
@Jaka: Quelle coque utilisez-vous? Je n'ai pas trouvé la commande watch dans les référentiels Linux. –
J'utilise bash. watch est dans le paquet 'procps' sur Debian (probablement similaire dans Ubuntu). Il est disponible en tant que paquet séparé ('watch') via Fink sur Mac OS X. –
La commande fonctionne bien aussi sans écho; –
Vous pouvez le faire en utilisant say perl/python/php/otherlang et le temps qu'il faut pour ouvrir une connexion pour dire le port 80 par exemple. Vous pouvez stocker ceci dans une variable, puis l'utiliser pour l'analyse mathématique.
Quelque chose comme ce pseudo-code:
$site1_start = get_timestamp();
$sock = opensocket($someAddress,$required_port);
if($sock) { $sock->close(); };
$site1_end = get_timestamp();
$site1_round_trip = $t2 - $t1
$site2_start = get_timestamp();
$sock = opensocket($someAddress);
if($sock) { $sock->close(); };
$site2_end = get_timestamp();
$site2_round_trip = $t2 - $t1
// now we can perform some stuff on the round trips
De quel environnement s'agit-il? PowerShell? – unwind
@unwind: J'utilise bash dans Ubuntu et Mac aussi. –
Une autre question, est-ce que ce doit être des paquets ICMP? – Wayne