Comando ping con fecha y hora de respuesta +colores

Desde el blog de Linux-Explore me llega este interesante tip.

Como dicen que una imagen vale más que mil palabras, aquí les dejaré dos screenshots de las diferencias entre hacer un ping a un ordenador de forma común y corriente, y a hacerlo como les mostraré más adelante.

Ping normal:

Ping
como les propongo:

Como pueden apreciar, al inicio de cada línea nos muestra la fecha y hora (y segundos) de cada respuesta de ping, seguidamente nos muestra los bytes que retornaron, y el resto de los datos que normalmente obtenemos sí. Además, nos muestra colores distintos para cada tipo de información que nos devuelve, así se hace más simple poder identificar a los mismos.

Para obtener el ping de esta forma usamos la siguiente línea:

ping localhost | xargs -n1 -i bash -c 'echo `date +%F\ %T`" {}"' | ccze

Nota: Deben tener instalado el paquete ccze para poder ver los colores, si no lo desean instalar retiren del final de la línea lo siguiente: | ccze

La misma lo que significa … es un tanto complejo de explicar 

Primero hacemos ping a un objetivo (en los screenshots pc1, pero si lo prueban así no les funcionará, por eso pongo localhost en la línea), luego lo que nos devuelva ese comando lo pasamos como dato ‘en espera’, y usando xargs es que indicamos que ponemos antes del dato que recién tenemos en ‘standby’, pondremos el resultado de ejecutar un echo al comando date (con parámetros). Sí… sé que es un tanto complejo de entender, pero comprenderlo no es del todo obligatorio por el momento 

¿Cómo podemos usar este ping con esteroides por defecto en vez del ping regular?

Primero debemos crear en nuestro .bashrc (noten el punto al inicio del archivo) una función, o sea, crearemos este ping con esteroides en nuestra terminal como algo regular, para poderlo usar con facilidad.

Para ello sigamos los pasos:

1. Abrimos el archivo .bashrc que está ubicado en nuestro home. Podemos usar nuestro editor de texto favorito:

1.1. Si usas KDE -» Presiona [Alt]+[F2], escribes lo siguiente y presionas [Enter] : kate ~/.bashrc

1.2. Si usas Gnome, Unity o Cinnamon -» Presiona [Alt]+[F2], escribes lo siguiente y presionas [Enter] : gedit ~/.bashrc

2. En el final del archivo escribimos las siguientes dos líneas:

function eping { ping "$1" | xargs -n1 -i bash -c 'echo `date +%F\ %T`" {}"' | ccze; }
alias ping='eping'

3. Ahora falta solamente instalar el paquete ccze … que es quien nos permitirá visualizar con colores todo.

4. Ahora debemos abrir una nueva terminal, y simplemente hagan un ping a donde más gusten… ya les debe funcionar sin problemas: ping localhost

¿Qué hicimos en realidad?

Bueno… escribimos en nuestro archivo .bashrc (ya saben, el archivo que contiene nuestras configuraciones o personalizaciones para lo relacionado con nuestra terminal) dos simples líneas, con la primera de ellas creamos el comando eping, que su función es hacer ping (con todos esos parámetros) al objetivo que pusimos después del comando (Por ejemplo, ping localhost … localhost es el objetivo), si desean saber más sobre lo de crear funciones bash pueden leer el artículo: Tip extremadamente útil si usas la terminal

Esto por sí solo no hará que al usar el comando ping nos muestre los datos así… esto solo hará que al usar eping nos los muestre así, por lo que en la segunda línea simplemente definimos que cuando escribimos ping, en realidad deseamos usar eping.

Si me he liado un poco pido disculpas  … cualquier duda que tengan intentaré aclararla.

Una vez más gracias a Linux-Explore por compartir el tip de ping + fecha, yo intenté aportar solo un poco más y por eso le agregué colores y definir que ping=eping (luego de haber creado eping).

Bueno nada, espero les haya sido de utilidad 

Saludos