Bonjour,
Dans un shell (fichier .sh), j'aimerai :
lancer une commande ping [ICMP ECHO REQUEST] (par exemple ping free.fr) et récupérer dans une variable la taille des données du message ICMP ECHO REPLY.
par exemple, lorsque je lance "ping free.fr", j'obtiens : "64 bytes from www.free.fr (121.27.48.10) : icmp_seq=1........"
et moi je voudrais récupérer dans ma variable la chaine de caractéère 64. Je pense que ca doit être possible avec grep et chaine régulière.
Dans mon cas, le nb de bytes (ici 64) peut varier de 0 à 10000.
Merci de votre aide.
Zeph Le 14/09/2007 à 12:58 je te conseille d'aller voir un tutoriel pour comprendre comment fonctionnent les expressions régulières, mais quelque chose de ce genre correspond peut-être à ce que tu veux faire :
ping free.fr | grep -Eo '^[0-9]+'
(c'est vraiment le nombre de bytes reçus que tu veux récupérer ?)

All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez
par ici :)
Merci Zephyr,
Ta commande "ping free.fr | grep -Eo '^[0-9]+'" est exactement ce qu'il me fallait. J'ai simplement du rajouter l'option -m 1 à grep, car lorque je lance la commande : "ping -c 1 free.fr" (celle dont j'ai besoin, car je n'envoie qu'un paquet ICMP, et non "ping free.fr" comme je l'avais mis dans mon post), j'obtiens la sortie suivante :
root@ubuntu:~# ping -c 1 free.fr
PING free.fr (212.27.48.10) 56(84) bytes of data.
64 bytes from www.free.fr (212.27.48.10): icmp_seq=1 ttl=120 time=72.7 ms
--- free.fr ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 72.791/72.791/72.791/0.000 ms
Et donc le 1 du "1 packet" (avt dernière ligne) ressortait aussi.
Par contre, je me demande quand même l'intérêt d'un telle commande ?
Ce nombre vaut toujours 64, à moins que tu ne spécifie une autre quantité sur la ligne de commande de ping.
Zeph Le 14/09/2007 à 18:29 d'où la question en-dessous de la commande.

All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez
par ici :)
Oui, mais comme elle n'a pas eu de réponse... ^^