6 herramientas CLI alternativas que instalo inmediatamente en Linux 1

6 herramientas CLI alternativas que instalo inmediatamente en Linux

Índice
  1. bat: Como cat, Pero Mejor
  2. ripgrep: grep en Esteroides
  3. delta: ripgrep en Esteroides — Ahora en Esteroides
  4. fd: Un Encontrar Más Rápido
  5. Colores Preciosos
  6. Eza: Un Reemplazo Moderno para ls
  7. La Shell Es Inutilizable Sin fzf History Search
  8. Un Script Extra para Buscar Archivos Como un Profesional

Descubre cómo transformar la experiencia de usar utilidades de terminal en Linux con herramientas coloridas y eficientes que mejoran la legibilidad y aceleran tus tareas diarias.

Las utilidades estándar en Linux son aburridas; ¿alguna vez te has dado cuenta de eso? Su función es esencial, pero son monótonas. ¿No te gustaría alegrar sus salidas con algunos colores bonitos? ¿O incluso acelerarlas? Estas utilidades de terminal hacen eso y más.

bat: Como cat, Pero Mejor

Cat fue el primer comando que aprendí, y sigue siendo uno de los que más uso. Sin embargo, está mostrando su edad porque solo muestra texto simple y sin formato. A menudo, es difícil leer archivos complejos, como archivos de configuración, código, JSON o YAML.

Bat es igual que cat, excepto que es mejor. Aborda el problema de la legibilidad al resaltar archivos complejos con colores bonitos (también conocido como resaltado de sintaxis). Hace que los archivos sean mucho más fáciles de leer porque las secciones y fronteras destacan.

Bat tiene algunas funciones adicionales que lo hacen más atractivo, como la integración con Git para marcar líneas cambiadas. También puede trabajar con otras herramientas, como fzf o find, para mostrar ventanas de vista previa de color.

Bat está disponible universalmente; lo encontrarás en casi todos los repositorios de distribuciones.

ripgrep: grep en Esteroides

Al igual que todas las otras utilidades que mencionaré, ripgrep es una mejora sobre su contraparte estándar. Su principal punto de venta es la velocidad: realiza múltiples búsquedas en paralelo, algo que su contraparte mayor, grep, no hace. Ripgrep aprovecha el poder de las CPU modernas distribuyendo su trabajo entre todos los núcleos de la CPU.

Ripgrep no solo es extremadamente rápido; también tiene una larga lista de funciones útiles, como detección de mayúsculas, ignorar archivos y carpetas específicas, e integración con otras aplicaciones.

La detección de mayúsculas es una característica simple y elegante que debería formar parte de todas las funciones de búsqueda existentes. Simplemente significa que si usas letras mayúsculas en tu término de búsqueda, la búsqueda se vuelve sensible a mayúsculas. Es una función de calidad de vida que a menudo falta.

Ripgrep también ignora archivos y carpetas específicas, según lo indicado por un archivo gitignore o ignore. Por ejemplo, el siguiente archivo haría que ripgrep ignorara todas las imágenes llamadas foo.jpg o directorios llamados ignored_dir.

ignored_dir/
**/foo.jpg

Ripgrep tiene una excelente integración con otras aplicaciones. Emacs, Vim, Neovim y fzf tienen extensiones de terceros que proporcionan integración con ripgrep; esto permite que estas aplicaciones aprovechen las potentes capacidades de búsqueda de ripgrep directamente. Fzf (otra utilidad) proporciona funciones avanzadas que funcionan bien con ripgrep, como verás más adelante.

No es todo; Ripgrep también puede buscar a través de archivos comprimidos con la bandera Z. Si tienes un directorio extenso de archivos de texto y comprimidos, ripgrep puede atravesarlos todos sin necesidad de descompresión manual. Debido a que no detalla mucho sobre la coincidencia, puede ser un poco decepcionante; sin embargo, ahorra mucho tiempo y molestias.

Ripgrep está disponible en la mayoría de los repositorios de distribuciones, así que consulta el manual de tu distribución para las instalaciones de paquetes.

delta: ripgrep en Esteroides — Ahora en Esteroides

Delta es típicamente para programadores, y es una de mis utilidades favoritas. Ripgrep hace un trabajo fantástico al atravesar archivos rápidamente para encontrar exactamente lo que necesitas; tiene características modernas y una sintaxis de búsqueda avanzada. Sin embargo, la salida es sosa porque carece de color y contexto. Si bien algunos podrían argumentar que es simple y se enfoca únicamente en el término de búsqueda, yo siento que necesito más. Cuando busco código, quiero ver el contexto y los colores circundantes, porque ambos ayudan a separar el trigo de la paja.

Para aquellos de ustedes que son programadores (o que están comenzando), delta aplica resaltado de sintaxis a la salida de ripgrep. También proporciona funciones adicionales para integrarse con Git, que es un sistema de gestión documental. Por ejemplo, proporciona una bonita vista lado a lado de los cambios en los documentos (también conocido como diff, que es una abreviatura de diferencia).

Git puede gestionar cualquier tipo de documento de texto, y las personas a menudo lo usan para guardar sus dotfiles (también conocidos como archivos de configuración que comienzan con un punto). Si estás interesado en guardar tus dotfiles, te recomendaría encarecidamente guardarlos con Git. En ese caso, delta también valdría la pena si solo consideras la vista diff.

Puedes instalar delta a través de los repositorios oficiales de Debian, Ubuntu, Fedora, Arch Linux y algunos más, bajo el nombre git-delta. También está disponible a través de Homebrew y Nix.

fd: Un Encontrar Más Rápido

Colores Preciosos

Como indica el encabezado, fd es muy similar a find, excepto que es significativamente más rápido y con colores más bonitos. Los colores, como se mencionó anteriormente, hacen que los resultados de búsqueda sean más fáciles de leer y distinguir. Fd codifica por colores diferentes tipos de archivos y rutas de directorios.

Además de su uso de colores, fd recorre múltiples árboles de directorios en paralelo, lo que aprovecha múltiples núcleos en las CPU modernas. Esta capacidad se extiende más allá del simple recorrido de directorios; también se aplica a la ejecución de comandos. Cuando utilizas la opción X, fd ejecuta un comando en paralelo contra cada coincidencia.

fd foo.txt -x bat --color=always

Al igual que ripgrep, fd también admite búsquedas con sensibilidad inteligente a mayúsculas y minúsculas, y también respeta el archivo gitignore, por lo que las búsquedas son más convenientes y disminuyen el ruido por defecto.

Fd está disponible para casi todas las distribuciones, así que para instalarlo, consulta el gestor de paquetes o manual de tu distribución.

Eza: Un Reemplazo Moderno para ls

Eza es una versión moderna del comando estándar ls, y sus principales características son un mejor soporte de colores e íconos. Aunque no es esencial, encuentro que los íconos son un buen toque, pero para mí, los colores son fundamentales.

Eza tiene algunas características adicionales interesantes, como la vista en árbol y los hipervínculos. Por ejemplo, la opción de hipervínculos convierte todos los nombres de archivos y directorios en enlaces clicables usando el formato OSC 8. La mayoría de los terminales soportan estos enlaces, pero para estar seguro, puedes consultar la lista no oficial de terminales que soportan hipervínculos OSC 8. Cada terminal es diferente, y puede que necesites activarlo manualmente.

Lo mejor es que los hipervínculos también funcionan con la vista en árbol, lo que significa que puedes navegar rápidamente por directorios grandes. Sin embargo, un problema que he notado es que la vista en árbol de eza es mucho más lenta que el árbol estándar: tree transmite resultados a medida que los encuentra, mientras que eza navega por todo el directorio (a veces grande) y los muestra todos de una vez—esto puede tardar un tiempo, pero tiene colores bonitos y enlaces clicables.

El último punto es que es molesto escribir eza --icons cada vez, así que querrás leer nuestra guía sobre cómo crear un alias.

Eza está disponible para las distribuciones más populares, así que puedes consultar el gestor de paquetes de tu distribución. Sin embargo, la instalación en Debian y Ubuntu requiere un repositorio APT personalizado, pero la página de inicio de eza cubre esto.

Tanto si eres principiante como veterano, usar una herramienta de búsqueda difusa para tu historial de shell es esencial—es la herramienta más importante que tengo. Es tedioso escribir comandos, así que solo quiero hacerlo una vez. También es tedioso buscar comandos anteriores, porque usar las teclas de arriba y abajo ralentiza mi flujo de trabajo. Una herramienta de búsqueda difusa resuelve ambos problemas.

Si no sabes qué es una búsqueda difusa, simplemente significa una búsqueda de aproximación cercana. Por ejemplo, escribir emp o xpe coincidirá con example. ¿Por qué es esto importante? Porque no puedo recordar un comando que escribí hace dos meses, o porque cambiar rápidamente entre varios comandos afecta mi memoria. Solo necesito recordar algunos caracteres del comando, y la herramienta de búsqueda difusa reduce rápidamente la búsqueda en tiempo real.

Durante años, he confiado en el complemento fzf History Search para zsh. Alternativamente, hay una herramienta independiente llamada Atuin que es casi idéntica. Ambas hacen un trabajo simple pero efectivo.

Consulta el repositorio de GitHub de fzf History Search para obtener instrucciones de instalación. También puede que quieras seguir nuestras guías sobre cómo instalar Oh-My-Zsh y cómo instalar fzf. Un enfoque alternativo y más fácil es leer nuestra guía sobre cómo instalar y usar Atuin.

Un Script Extra para Buscar Archivos Como un Profesional

Si instalas fzf, ripgrep y bat, puedes usar el siguiente comando impresionante para buscar de manera difusa en tu sistema de archivos y abrir las líneas coincidentes en tu editor de texto favorito. Coloca el siguiente comando en tu archivo bashrc y luego recarga con source bashrc. Consulta nuestra guía sobre cómo funciona el archivo bashrc para más información.

s () {
 fzf --ansi --disabled \
 --bind "change:reload:command \
 rg --line-number --no-heading --color=always.
--smart-case {q} \
 || :" \
 --bind "enter:execute(${EDITOR:-nano} +{2} {1})" \
 --delimiter ":" \
 --preview "command bat -p --color=always {1} --highlight-line {2}" \
 --preview-window 'up:80%,border-bottom,~3,+{2}+3/3'
}

El comando anterior tiene por defecto abrir archivos en nano, pero puedes configurarlo para usar Vim, Neovim, Emacs y algunos otros. Simplemente establece la variable de editor en tu bashrc y recárgala:

export EDITOR=nvim

Para usar el script, simplemente cambia a un directorio que contenga archivos de texto y la letra "s." Aunque este comando aceptará palabras comunes como términos de búsqueda, puedes aumentar drásticamente su precisión si sigues nuestra guía sobre Regex, una sintaxis de búsqueda avanzada que puedes aprender en una hora.

Sin fzf History Search, ripgrep y delta, me siento perdido, y por lo tanto, a menudo son las primeras herramientas que instalo. Sin eza, bat y fd, el terminal se siente sencillo e ilegible. Sin embargo, esta no es una lista exhaustiva, y he detallado aún más utilidades de terminal para monitorear recursos del sistema.

Si deseas encontrar artículos similares a 6 herramientas CLI alternativas que instalo inmediatamente en Linux, te sugerimos revisar la categoría Linux.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir