EZA - El Mejor Alternativa Al Comando LS

¿Usas el comando LS a diario? Descubre EZA, una alternativa moderna y genial al comando LS que te permitirá trabajar más eficazmente con el terminal y te ayudará a convertirte en un experto en gestión de archivos.

El comando ls se utiliza habitualmente en los sistemas operativos tipo Unix para listar archivos y directorios dentro de un directorio. Aunque ls es el comando estándar para este fin, hay varias alternativas y mejoras disponibles que ofrecen funciones y opciones adicionales. Llevo mucho tiempo utilizando ls. Ha sido el favorito de muchos otros usuarios por su versatilidad y su sólido conjunto de funciones.

Descrito por su autor, Benjamin Sago (alias Ogham): “exa es un listador de archivos mejorado con más funciones y mejores valores predeterminados. Utiliza colores para distinguir los tipos de archivo y los metadatos. Conoce los enlaces simbólicos, los atributos extendidos y Git. Y es pequeño, rápido y sólo un binario.

Hoy, al actualizar los paquetes instalados, brew informó de que exa está obsoleto y ya no se admite. He comprobado el exa GitHub repo (~23K⭐️) y es triste pero cierto: la noticia principal dice que exa no recibe mantenimiento :( Sin embargo, en el mundo no faltan buenas personas, apasionadas por mantener vivos proyectos valiosos. Hicieron una bifurcación del proyecto llamada eza y cuenta con el apoyo activo de un equipo dedicado.

Si has estado utilizando “exa” y quieres hacer la transición a “eza”, el proceso en tu Mac es sencillo:

brew remove exa
brew install eza

Tras la instalación, actualiza tus alias según sea necesario para adaptarlos a tu uso preferido.

Si acabas de toparte con esta gran herramienta, después de instalarla con brew install eza, edita tu archivo de configuración de shell favorito y añade allí las siguientes líneas. Como yo uso zsh con OhMyZsh, he editado .zshrc y he añadido estas líneas:

ld='eza -lD'
lf='eza -lF --color=always | grep -v /'
lh='eza -dl .* --group-directories-first'
ll='eza -al --group-directories-first'
ls='eza -alF --color=always --sort=size | grep -v /'
lt='eza -al --sort=modified'

Ahora te explicaré lo que hacen…. Pero antes, permíteme recordarte que cualquier comando que invoques, ¡funciona en el directorio en el que te encuentres!

ld - sólo lista directorios (no archivos)
lf - sólo lista archivos (no directorios)
lh - lista sólo archivos ocultos (sin directorios)
ll - lista todo con los directorios primero
ls - lista sólo archivos ordenados por tamaño
lt - lista todo ordenado por hora de actualización

Algunas funciones de eza que no están en exa (no exhaustivo):

  • Corrige “El error de la cuadrícula” introducido en exa 2021
  • Soporte de hipervínculos
  • Salida de contexto Selinux
  • Salida del estado del repositorio Git
  • Fechas relativas legibles por humanos
  • Varias correcciones de seguridad (ver dependabot)
  • Muchas correcciones/cambios menores

Para muchas otras opciones de línea de comandos, por favor, dirígete al repositorio oficial de eza en GitHub.

Si aún ardes en deseos de ver soluciones alternativas, mencionaré aquí sólo dos.

👉 Una es lsd, “el comando ls de nueva generación”, escrito en Rust. lsd GitHub repo tiene casi 11K estrellas.

Captura de pantalla de LSD - LS comando alternativo

👉 Otra sería colorls, una gema de Ruby que embellece el comando ls del terminal, con iconos de colores y fuentes impresionantes. colorls GitHub repo tiene ~5K estrellas.

Captura de pantalla de ColorLS - LS comando alternativo

Siéntete libre de explorar aún más alternativas, pero te recomiendo encarecidamente que te quedes con eza.

En resumen, se puede decir que eza se convertirá en tu principal sustituto del comando “ls”, utilizado de forma totalmente natural, con mayor comodidad y productividad. ¡Estoy seguro de que te ayudará a mejorar tu trabajo en el terminal y a aumentar tu productividad!

En el vídeo puedes ver cómo funciona todo y aprender algunos trucos y consejos útiles.

Que lo disfrutes.

😉