Comment filtrer les infos d'un ping en temps réel?
Résolu
lsda26
Messages postés
68
Date d'inscription
Statut
Membre
Dernière intervention
-
dubcek Messages postés 18789 Date d'inscription Statut Contributeur Dernière intervention -
dubcek Messages postés 18789 Date d'inscription Statut Contributeur Dernière intervention -
A voir également:
- Comment filtrer les infos d'un ping en temps réel?
- Maps satellite en temps réel - Guide
- Renommer plusieurs fichiers en même temps - Guide
- Partager sa position en temps réel - Guide
- Port ping ✓ - Forum Réseau
- Ping:sur quel port?? - Forum Windows
12 réponses
Salut,
une solution via awk :
une solution via awk :
ping -i 0.2 192.168.1.1 | awk -F"=" '{S=substr($NF,1,length($NF)-3);if (S>10) {print S} }'
Bonjour tuxboy et merci pour ton aide.
Mais cette commande ne semble pas fonctionner car cela m'affiche uniquement des valeurs par rafale des valeurs de la variable S qui sont en plus inférieur à 10. Alors que je ne devrais avoir que celle supérieur à 10.
De plus je ne veut pas afficher que S. Je veut afficher les lignes complètes du ping qui on une valeur S>10.
Mais je ne sais pas si c'est possible de mettre en mémoire la chaine de caractère de la ligne du ping dans une variable A=>chercher dans cette variable A si une valeur est supérieur à 10=>si oui, afficher la chaine entière contenue dans la variable A.
Biensur tous celà assez rapidement pour ne pas trops dévier entre le momment du ping et sont affichage à l'écran.
Mais cette commande ne semble pas fonctionner car cela m'affiche uniquement des valeurs par rafale des valeurs de la variable S qui sont en plus inférieur à 10. Alors que je ne devrais avoir que celle supérieur à 10.
De plus je ne veut pas afficher que S. Je veut afficher les lignes complètes du ping qui on une valeur S>10.
Mais je ne sais pas si c'est possible de mettre en mémoire la chaine de caractère de la ligne du ping dans une variable A=>chercher dans cette variable A si une valeur est supérieur à 10=>si oui, afficher la chaine entière contenue dans la variable A.
Biensur tous celà assez rapidement pour ne pas trops dévier entre le momment du ping et sont affichage à l'écran.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
En grattant un peu, j'arrive à avoir à peu près ce que je veut avec cette commande:
ping 192.168.1.1 | awk -F "=" '{S=substr($NF,1,length($NF)-3);if (S>=5) {print $0} }'
Je dis à peu près car, en fait je n'arrive pas à voir les ligne de ping qui verifie la condition, en continu. On dirait qu'une grande quantité de ligne de ping verifiant la condition sont stocké en mémoire avant de les afficher par grappe après une long période sans rien afficher.
De quoi celà peut-il venir? Je voudrait traiter avec le awk, ping à son arrivé et donc les afficher tout de suite si il vérifie la condition...
ping 192.168.1.1 | awk -F "=" '{S=substr($NF,1,length($NF)-3);if (S>=5) {print $0} }'
Je dis à peu près car, en fait je n'arrive pas à voir les ligne de ping qui verifie la condition, en continu. On dirait qu'une grande quantité de ligne de ping verifiant la condition sont stocké en mémoire avant de les afficher par grappe après une long période sans rien afficher.
De quoi celà peut-il venir? Je voudrait traiter avec le awk, ping à son arrivé et donc les afficher tout de suite si il vérifie la condition...
hello
quelle version de awk ?
awk --version
essayer
quelle version de awk ?
awk --version
essayer
$ t=50; ping 192.168.1.1 | awk -F "[ =]*" -v t=$t '$(NF-1) > t {print; fflush()}'
voici ce que me renvoi la console après avoir lancé la commande: awk --version
awk: not an option: --version
Avec la commande précédente, on voie toujours apparaître les ligne de ping par vague de parfois 5 lignes, 15 lignes, etc...
awk: not an option: --version
Avec la commande précédente, on voie toujours apparaître les ligne de ping par vague de parfois 5 lignes, 15 lignes, etc...
Juste une dernière chose:
Avec la commande:
ping $IP -c 1 | grep icmp | awk -W interactive -F "[ =]*" -v t=$t '$(NF-1) > t {print}'
comment afficher la date+hh:mm:ss au debut de chaque ligne qui ressort après le awk
Merci
Avec la commande:
ping $IP -c 1 | grep icmp | awk -W interactive -F "[ =]*" -v t=$t '$(NF-1) > t {print}'
comment afficher la date+hh:mm:ss au debut de chaque ligne qui ressort après le awk
Merci
pas besoin du grep
ping $IP -c 1 | awk -W interactive -F "[ =]*" -v t=$t '/icmp/ && $(NF-1) > t {"date +\"%D %T\""|getline d; print d, $0}'