Pregunta: Cuando ejecuto comando ping desde la línea de comando, sigue enviando los paquetes hasta que presiono CTRL-C para terminar la salida del comando ping. ¿Cómo puedo ejecutar el comando ping solo para N? número de paquetes y terminar la salida automáticamente?
Respuesta: Utilice la opción de ping -c para especificar el número de paquetes. Después de enviar N cantidad de paquetes, el comando ping finalizará automáticamente como se explica a continuación.
Comando ping:modo interactivo
En el siguiente ejemplo, debe presionar CTRL-C para finalizar la salida del comando ping.
$ ping 0 PING 0 (127.0.0.1) 56(84) bytes of data. 64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.023 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.006 ms 64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.004 ms 64 bytes from 127.0.0.1: icmp_seq=4 ttl=64 time=0.005 ms .... Note: Press CTRL-C to terminate. --- 0 ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 3999ms rtt min/avg/max/mdev = 0.004/0.008/0.023/0.007 ms
- Nota:ping 0:hace ping al host local.
Comando Ping:modo no interactivo (especifique la cantidad de paquetes que se enviarán)
En el siguiente ejemplo, el comando ping enviará solo 2 paquetes y no necesita presionar CTRL-C para terminar la salida.
$ ping 0 -c 2 PING 0 (127.0.0.1) 56(84) bytes of data. 64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.024 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.006 ms --- 0 ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 999ms rtt min/avg/max/mdev = 0.006/0.015/0.024/0.009 ms
Opción de comando ping -c Usos
Redirigir la salida del comando ping a un archivo
$ ping 127.0.0.1 -c 2 > ping-output.txt $ cat ping-output.txt PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data. 64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.015 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.005 ms --- 127.0.0.1 ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 999ms rtt min/avg/max/mdev = 0.005/0.010/0.015/0.005 ms
Redirigir a otro proceso. Este ejemplo muestra solo el resumen de salida de ping (últimas dos líneas).
$ ping 127.0.0.1 -c 10 | tail -2 10 packets transmitted, 10 received, 0% packet loss, time 8999ms rtt min/avg/max/mdev = 0.005/0.006/0.014/0.003 ms