Ver un tren en la terminal

Introducción

En el mundo de Linux, la terminal no es sólo una herramienta para administrar sistemas también es un entorno donde el ingenio y el humor se ponen de manifiesto. Uno de los trucos clásicos más populares consiste en ver un tren ascendiendo o descendiendo por la pantalla como si fuera un espectáculo animado en ASCII. Este artículo detalla paso a paso cómo lograrlo, explorando tanto aspectos básicos como avanzados, personalización, integración en el flujo de trabajo y proyectos relacionados.

1. ¿Qué es sl

sl es un pequeño programa escrito en C que muestra una locomotora de vapor animada cuando el usuario escribe erróneamente ls como sl. Su nombre proviene de Steam Locomotive. Aunque surgió como una broma, hoy en día se ha convertido en un clásico indispensable para cualquier entusiasta de la terminal.

1.1 Características principales

  • Animación ASCII de una locomotora con vagones.
  • Varias opciones de visualización y velocidad.
  • Ideal como Easter egg o broma amistosa.
  • Licencia MIT, código abierto.

2. Instalación

A continuación se presentan las formas más comunes de instalar sl en distintas distribuciones:

2.1 Debian / Ubuntu y derivadas

sudo apt-get update  
sudo apt-get install sl

2.2 CentOS / RHEL / Fedora

sudo yum install sl  
# o en Fedora:
sudo dnf install sl

2.3 Arch Linux y AUR

sudo pacman -S sl  
# Si no está en repos principales:
git clone https://aur.archlinux.org/sl.git  cd sl  
makepkg -si

3. Uso básico

Después de la instalación, basta con escribir sl en la terminal. Automáticamente verás la locomotora desplazarse de derecha a izquierda.

 sl

3.1 Opciones más comunes

Opción Descripción
-a Animación de un tren con carrito adicional.
-l Locomotora grande.
-F Uso de forking varios trenes en pantalla.
-c Estilo de arte ASCII alternativo.

4. Integración en el entorno de trabajo

Para aprovechar sl como chiste ligero o recordatorio de que se debe usar ls, puedes configurar un alias o un función en tu .bashrc o .zshrc:

# Alias simple: 
alias sl=sl  

# Broma al teclear ls por error: 
function ls() {
    if [ 1 =  ] then
        /usr/games/sl   # ruta típica en Debian
    else
        /bin/ls @
    fi
}

Con esto, cada vez que ejecutes ls sin parámetros, saldrá el tren en lugar de la lista de archivos.

5. Personalización del ASCII art

El código fuente de sl contiene archivos de arte en la carpeta _data. Puedes modificarlos o crear versiones propias:

  1. Clona el repositorio oficial:
    git clone https://github.com/mtoyoda/sl.git
  2. Entra al directorio y edita los archivos .dat en _data.
  3. Reconstruye el programa:
    ./configure  
    make  
    sudo make install

De esta forma añadirás tu propio tren, vagones especiales o incluso escenarios a la animación.

6. Ejemplos de uso avanzado

6.1 Lanzar varios trenes simultáneos

sl -F -a -l

Genera múltiples locomotoras grandes con carrito, ideal para una demostración en eventos o conferencias.

6.2 Script automatizado

#!/bin/bash
# animatren.sh: despliega un tren cada 5 segundos
for i in {1..10} do
  sl -a 
  sleep 5
done

7. Comparativa con proyectos relacionados

Si buscas animaciones o bromas en la terminal, existen otras opciones. A continuación una tabla comparativa:

Proyecto Descripción Lenguaje
sl Animación de trenes en ASCII. C
pipes.sh Tuberías de colores generadas aleatoriamente. Bash
cmatrix Efecto Matrix en la terminal. C
asciinema Graba y reproduce sesiones de terminal. Go

8. Contribuir y recursos

Si deseas contribuir al proyecto:

  • Visita el repositorio oficial en GitHub:
    https://github.com/mtoyoda/sl
  • Lee la documentación en el archivo README.
  • Envía issues y pull requests para añadir nuevas locomotoras o correcciones.

Conclusión

El comando sl es una muestra de que la terminal de Linux puede ser divertida sin sacrificar profesionalismo. Con unos pocos pasos de instalación y configuración, puedes sorprender a compañeros de equipo o añadir un toque lúdico a tus demostraciones. Además, su código abierto te permite personalizar la animación y contribuir a mejorarla. ¡Haz que tu terminal eche humo con un tren cargado de creatividad!

  • Hola 👋 , soy la IA de Linuxmind.dev, te puedo ayudar a aprender.
Gathering thoughts ...

Leave a Reply

Your email address will not be published. Required fields are marked *