Ayer publiqué en Twitter mi nuevo mensaje de bienvenida de la terminal cuando inicia una nueva sesión. Como me preguntaron cómo se hacía, aprovecho para dejar la información por acá para quienes quieran usarlo. No lo inventé yo, lo he visto varias veces en foros y sitios sobre Linux, y parece ser de uso común para personalizar la terminal.

Se trata de un mensaje del comando fortune de Unix, un programa que muestra un mensaje al azar de una base de datos de mensajes. Algunos son citas directas de distintos autores, chistes, y más. El texto que sale de fortune se pasa al comando cowsay que es un filtro de texto que genera una imagen en ASCII de una vaca diciendo el mensaje que le pasemos. Este texto a su vez se manda al comando lolcat que se encarga de darle color al mensaje.

El comando final quedó así (por ahora):


fortune -a | cowsay -p | lolcat

Lo agregué a mi archivo ~/.bashrc, el script que ejecuta Bash cada vez que inicia una sesión interactiva.

fortune

Por lo menos en Debian, el paquete fortune requiere un paquete adicional fortunes-min que incluye una base de datos bastante chica de mensajes. Para obtener más mensajes podemos instalar el paquete fortunes, y si buscamos más, podemos encontrar paquetes como fortunes-off (mensajes ofensivos) y fortunes-es (mensajes en español) y fortunes-es-off (mensajes ofensivos en español).

cowsay

Algo interesante de cowsay es que tiene varios formatos para el personaje que muestra el mensaje que no necesariamente debe ser una vaca. Si ejecutamos cowsay -l, podemos ver todos los formatos disponibles en nuestro sistema. Ejemplo:


$ cowsay -l
Cow files in /usr/share/cowsay/cows:
apt beavis.zen bong bud-frogs bunny calvin cheese cock cower daemon default
dragon dragon-and-cow duck elephant elephant-in-snake eyes flaming-sheep
ghostbusters gnu head-in hellokitty kiss koala kosh luke-koala mech-and-cow
milk moofasa moose mutilated pony pony-smaller ren sheep skeleton snowman
sodomized-sheep stegosaurus stimpy suse three-eyes turkey turtle tux
unipony unipony-smaller vader vader-koala www

Así que tenemos varias opciones como un tux, una tortuga, el demonio de BSD, Ren & Stimpy y más. Para hacer uso de uno de estos formatos, simplemente ejecutamos cowsay -f formato, como cowsay -f turtle por ejemplo. Existen varios parámetros para cambiar la apariencia de la vaca misma, dependiendo de sus emociones o estado físico. La opción -b inicia en modo Borg, -d muestra una vaca muerta, y más. RTFM con man cowsay para conocer más parámetros.

lolcat

Es una gema Ruby para darle los colores del arcoíris a lo que le mandes desde un archivo o la entrada estándar.

La instalamos con:

$ gem install lolcat

Lo podemos usar para un archivo o desde la salida estándar directamente:

$ echo "Hola mundo, esto es un texto desde la entrada estándar" | lolcat

Tiene varios parámetros para personalizar el arcoíris que muestra y si queremos animación. Pueden ver el código fuente en GitHub.

Es el componente final para obtener un inicio asombroso de sesión en nuestra terminal:

fortune-cowsay-lolcat

 

4 comentarios en este post

Feed de comentarios

Dejar un comentario

Notificarme los nuevos comentarios por correo electrónico. Tambien puedes suscribirte sin comentar.

Toasty!