Herramientas CLI que no podrás vivir sin

Herramientas CLI que no podrás vivir sin ellas :wrench:

(Alicia Sykes - DEV Community)

Alicia Sykes Subscriber\

Publicado el 19 de enero de 2023 • Editado el 21 de enero de 2023


¡Una lista de 50 herramientas de línea de comandos que definitivamente deberías revisar!

#bash rust tooling productivity


Como desarrolladores, pasamos mucho tiempo en la terminal. Hay muchas herramientas CLI útiles que pueden hacer tu vida en la línea de comandos más fácil, rápida y generalmente más divertida.

Este artículo describe mis 50 herramientas CLI imprescindibles, en las que he llegado a confiar. Si hay algo que me falta, ¡házmelo saber en los comentarios :slight_smile:

Al final del artículo, he incluido algunos scripts para ayudarte a automatizar la instalación y actualización de estas herramientas en varios sistemas/distribuciones.

Contenidos

Utils### thefuck - Autocorrección de comandos mal escritos

thefuck es una de esas utilidades sin las que no podrás vivir una vez que la hayas probado. Siempre que escribas mal un comando y obtengas un error, solo ejecuta fuck y se autocorregirá. Usa arriba/abajo para elegir una corrección, o simplemente ejecuta fuck --yeah para ejecutar la más probable inmediatamente.

the-fuck-example-usage

View thefuck on GitHub Author nvbn Written in Python

{ details Instalar }

# MacOS (vía Homebrew)
brew install thefuck

# Arch Linux
sudo pacman -S thefuck

# FreeBSD
pkg install thefuck

{ enddetails }


zoxide - Navegación fácil (mejor cd)

z te permite saltar a cualquier directorio sin necesidad de recordar o especificar su ruta completa. Recuerda qué directorios has visitado, para que puedas moverte rápidamente - ni siquiera necesitas escribir el nombre completo de la carpeta. También tiene una opción de selección interactiva, usando fzf para que puedas filtrar en vivo los resultados de directorios

zoxide-example-usage

View zoxide on GitHub Author ajeetdsouza Written in Rust

{ details Instalar }

# MacOS (vía Homebrew)
brew install zoxide

# Arch Linux
sudo pacman -S zoxide

# Debian / Ubuntu
sudo apt install zoxide

# FreeBSD
pkg install zoxide

# Otro (vía Rust Crates)
cargo install zoxide --locked

{ enddetails }


tldr - Documentación mantenida por la comunidad (mejor man)

tldr es una enorme colección de páginas man mantenidas por la comunidad. A diferencia de las páginas man tradicionales, están resumidas, contienen ejemplos de uso útiles y están coloreadas para facilitar la lectura

tldr-example-usage

View tldr on GitHub Author tldr-pages

{ details Instalar }

# MacOS (vía Homebrew)
brew install tldr

# Otro (vía NPM)
npm install -g tldr

{ enddetails }


scc - Contar líneas de código (mejor cloc)

scc te proporciona un desglose del número de líneas de código escritas en cada lenguaje para un directorio específico. También muestra algunas estadísticas divertidas, como el costo estimado de desarrollo e información de complejidad. Es increíblemente rápido, muy preciso y tiene soporte para una amplia gama de lenguajes

View scc on GitHub Author boyter ![Written in Go](Go Lang&color=00ADD8&logo=go&logoColor=FFFFFF)

{ details Instalar }

# MacOS (vía Homebrew)
brew install scc

# Otro (vía go)
go install github.com/boyter/scc/v3@latest

{ enddetails }


exa - Listado de archivos (mejor ls)

exa es un reemplazo moderno basado en Rust para el comando ls, para listar archivos. Puede mostrar iconos de tipo de archivo, colores, información de archivo/carpeta y tiene varios formatos de salida - árbol, cuadrícula o lista

View exa on GitHub Author ogham Written in Rust

{ details Instalar }

# MacOS (vía Homebrew)
brew install exa

# Arch Linux
sudo pacman -S exa

# Debian / Ubuntu
sudo apt install exa

{ enddetails }


duf - Uso de disco (mejor df)

duf es excelente para mostrar información sobre discos montados y verificar espacio libre. Produce una salida clara y colorida, e incluye opciones para ordenar y personalizar resultados.

View duf on GitHub Author muesli ![Written in Go](Go Lang&color=00ADD8&logo=go&logoColor=FFFFFF)

{ details Instalar }

# MacOS (vía Homebrew)
brew install duf

# Arch Linux
sudo pacman -S duf

# Debian / Ubuntu
sudo apt install duf

# FreeBSD
pkg install duf

{ enddetails }


aria2 - Utilidad de descarga (mejor wget)

aria2 es una utilidad de descarga ligera, multiprotocolo y reanudable para HTTP/HTTPS, FTP, SFTP, BitTorrent y Metalink, con soporte para controlar a través de una interfaz RPC. Es increíblemente rica en características, y tiene toneladas de opciones. También está ziahamza/webui-aria2 - una interfaz web complementaria agradable.

View aria2 on GitHub Author aria2 Written in C++

{ details Instalar }

# MacOS (vía Homebrew)
brew install aria2

# Arch Linux
sudo pacman -S aria2

# Debian / Ubuntu
sudo apt install aria2

{ enddetails }


bat - Lectura de archivos (mejor cat)

bat es un clon de cat con resaltado de sintaxis e integración con git. Escrito en Rust, es muy eficiente, y tiene varias opciones para personalizar la salida y los temas. Hay soporte para tuberías automáticas y concatenación de archivos

View bat on GitHub Author sharkdp Written in Rust

{ details Instalar }

# MacOS (vía Homebrew)
brew install bat

# Arch Linux
sudo pacman -S bat

# Debian / Ubuntu
sudo apt install bat

{ enddetails }{ enddetails }


diff-so-fancy - Comparación de archivos (mejor diff)

diff-so-fancy te proporciona diffs con mejor apariencia para comparar cadenas, archivos, directorios y cambios de git. El resaltado de cambios facilita mucho la detección de diferencias, y puedes personalizar el diseño y los colores de salida

View diff-so-fancy on GitHub Author so-fancy Written in Perl

{ details Instalar }

# MacOS (vía Homebrew)
brew install diff-so-fancy

# Arch Linux
sudo pacman -S diff-so-fancy

# Debian / Ubuntu
sudo apt install diff-so-fancy

{ enddetails }


entr - Vigilar cambios

entr te permite ejecutar un comando arbitrario cada vez que cambian los archivos. Puedes pasar un archivo, directorio, enlace simbólico o expresión regular para especificar qué archivos debe vigilar. Es muy útil para reconstruir proyectos automáticamente, reaccionar a registros, pruebas automatizadas, etc. A diferencia de proyectos similares, utiliza kqueue(2) o inotify(7) para evitar sondeos y mejorar el rendimiento

View entr on GitHub Author eradman Written in C

{ details Instalar }

# MacOS (vía Homebrew)
brew install entr

# Arch Linux
sudo pacman -S entr

# Debian / Ubuntu
sudo apt install entr

{ enddetails }


exiftool - Lectura y escritura de metadatos

ExifTool es una utilidad práctica para leer, escribir, eliminar y crear información de metadatos para una amplia variedad de tipos de archivo. ¡Nunca vuelvas a filtrar accidentalmente tu ubicación al compartir una foto!

View exiftool on GitHub Author exiftool Written in Perl


fdupes - Buscador de archivos duplicados

jdupes se utiliza para identificar y/o eliminar archivos duplicados dentro de directorios especificados. Es útil para liberar espacio en disco cuando tienes dos o más archivos idénticos

View jdupes on GitHub Author jbruchon Written in C


fzf - Buscador de archivos difuso (mejor find)

fzf es una herramienta de búsqueda y filtrado de archivos difusa extremadamente poderosa y fácil de usar. Te permite buscar una cadena o patrón en archivos. fzf también tiene complementos disponibles para la mayoría de shells e IDEs, para mostrar resultados instantáneos mientras buscas. Este artículo de Alexey Samoshkin destaca algunos de sus casos de uso.

fzf-example-usage

View fzf on GitHub Author junegunn ![Written in Go](Go Lang&color=00ADD8&logo=go&logoColor=FFFFFF)

{ details Instalar }

# MacOS (vía Homebrew)
brew install fzf

# Arch Linux
sudo pacman -S fzf

# Debian / Ubuntu
sudo apt install fzf

{ enddetails }


hyperfine - Evaluación de comandos

hyperfine facilita la evaluación precisa y la comparación de comandos o scripts arbitrarios. Se encarga de las ejecuciones de calentamiento, la limpieza de caché para resultados precisos y la prevención de interferencias de otros programas. También puede exportar resultados como datos sin procesar y generar gráficos.

View hyperfine on GitHub Author sharkdp Written in Rust

{ details Instalar }

# MacOS (vía Homebrew)
brew install hyperfine

# Arch Linux
sudo pacman -S hyperfine

# Debian / Ubuntu
sudo apt install hyperfine

{ enddetails }


just - Ejecutor de comandos moderno (mejor make)

just es similar a make pero con algunas adiciones agradables. Te permite agrupar los comandos de tu proyecto en recetas, que se pueden listar y ejecutar fácilmente. Soporta alias, argumentos posicionales, diferentes shells, integración de dot env, interpolación de cadenas, y prácticamente todo lo que podrías necesitar

View just on GitHub Author casey Written in Rust

{ details Instalar }

# MacOS (vía Homebrew)
brew install just

# Arch Linux
sudo pacman -S just

# Debian / Ubuntu
sudo apt install just

{ enddetails }


jq - Procesador JSON

jq es como sed, pero para JSON - puedes usarlo para dividir, filtrar, mapear y transformar datos estructurados con facilidad. Se puede usar para escribir consultas complejas para extraer o manipular datos JSON. También hay un área de pruebas de jq que puedes usar para probarlo o formular consultas con retroalimentación en vivo

View jq on GitHub Author stedolan Written in C


most - Paginador de desplazamiento multiventana (mejor less)

most es un paginador para leer archivos largos o salidas de comandos. most soporta multi-ventanas y tiene la opción de no envolver textoAutor Jed Escrito en S-Lang


procs - Visor de procesos (mejor ps)

procs es un visor de procesos fácil de navegar, tiene resaltado de colores, facilita la clasificación y búsqueda de procesos, tiene vista de árbol y se actualiza en tiempo real

procs-example-usage

Ver procs en GitHub Autor dalance Escrito en Rust


rip - Herramienta de eliminación (mejor rm)

rip es una herramienta de eliminación segura, ergonómica y eficiente. Te permite eliminar intuitivamente archivos y directorios, y restaurar fácilmente archivos eliminados

rip-example-usage

Ver rip en GitHub Autor nivekuil Escrito en Rust


ripgrep - Búsqueda dentro de archivos (mejor grep)

ripgrep es una herramienta de búsqueda orientada a líneas que busca recursivamente en el directorio actual un patrón regex. Puede ignorar el contenido de .gitignore y omitir archivos binarios. Es capaz de buscar dentro de archivos comprimidos, o buscar solo extensiones específicas, y entiende archivos que utilizan varios métodos de codificación

Ver ripgrep en GitHub Autor BurntSushi Escrito en Rust


rsync - Transferencia de archivos rápida e incremental

rsync te permite copiar archivos grandes localmente o hacia/desde hosts remotos o unidades externas. Se puede utilizar para mantener archivos sincronizados en múltiples ubicaciones, y es perfecto para crear, actualizar y restaurar copias de seguridad

Ver rsync en GitHub Autor WayneD Escrito en C


sd - Buscar y reemplazar (mejor sed)

sd es una herramienta de búsqueda y reemplazo fácil, rápida e intuitiva, basada en literales de cadena. Se puede ejecutar en un archivo, un directorio completo, o cualquier texto canalizado

Ver sd en GitHub Autor chmln Escrito en Rust


tre - Jerarquía de directorios (mejor tree)

tre genera una lista de estilo árbol de archivos para tu directorio actual o uno especificado, con colores. Al ejecutarse con la opción -e, numera cada elemento y crea un alias temporal que puedes usar para saltar rápidamente a esa ubicación

Ver tre en GitHub Autor dduan Escrito en Rust


xsel - Acceder al portapapeles

xsel te permite leer y escribir en el portapapeles de X Selection a través de la línea de comandos. Es útil para canalizar la salida de comandos al portapapeles, o datos copiados en un comando

Ver xsel en GitHub Autor kfish Escrito en C



Aplicaciones de monitoreo y rendimiento de CLI

bandwhich - Monitor de utilización de ancho de banda

Muestra el uso de ancho de banda, información de conexión, hosts salientes y consultas DNS en tiempo real

Ver bandwhich en GitHub Autor imsnif Escrito en Rust


ctop - Métricas y monitoreo de contenedores

Como top, pero para monitorear el uso de recursos en contenedores (Docker y runC) en ejecución. Muestra CPU, memoria y ancho de banda de red en tiempo real, así como el nombre, estado e ID de cada contenedor. También hay un visor de registros integrado y opciones para gestionar (detener, iniciar, ejecutar, etc) contenedores

ctop-example-usage

Ver ctop en GitHub Autor bcicen ![Escrito en Go](Go Lang&color=00ADD8&logo=go&logoColor=FFFFFF)


bpytop - Monitoreo de recursos (mejor htop)

bpytop es un monitor de recursos rápido, interactivo y visual. Muestra los procesos principales en ejecución, historial reciente de CPU, memoria, disco y red. Desde la interfaz puedes navegar, clasificar y buscar - también hay soporte para temas de colores personalizados

bpytop-example-usage

Ver bpytop en GitHub Autor aristocratos Escrito en Python

—### glances - Monitor de recursos + web y API

glances es otro monitor de recursos, pero con un conjunto de características diferente. Incluye una vista web completamente responsiva, una API REST y monitoreo histórico. Es fácilmente extensible y puede integrarse con otros servicios

glances-example-usage

View glances on GitHub Author nicolargo Written in Python


gping - Herramienta de ping interactiva (mejor ping)

gping puede ejecutar pruebas de ping en múltiples hosts, mientras muestra los resultados en un gráfico en tiempo real. También se puede usar para monitorear el tiempo de ejecución, cuando se usa con la bandera --cmd

gping-example-usage

View gping on GitHub Author orf Written in Rust


dua-cli - Analizador y monitor de uso de disco (mejor du)

dua-cli te permite ver interactivamente el espacio de disco usado y disponible para cada unidad montada, y facilita la liberación de almacenamiento

dua-cli-usage-example

View dua-cli on GitHub Author Byron Written in Rust


speedtest-cli - Utilidad de prueba de velocidad de línea de comandos

speedtest-cli simplemente ejecuta una prueba de velocidad de internet, a través de speedtest.net - pero directamente desde la terminal :slight_smile:

speedtest-cli-example-usage

View speedtest-cli on GitHub Author sivel Written in Python


dog - Cliente de búsqueda DNS (mejor dig)

dog es un cliente de búsqueda DNS fácil de usar, con soporte para DoT y DoH, salidas con colores agradables y la opción de emitir JSON

View dog on GitHub Author ogham Written in Rust



Aplicaciones de productividad CLI

¡Navega por la web, reproduce música, verifica correos electrónicos, gestiona calendarios, lee noticias y más, todo sin salir de la terminal!

browsh - Navegador web CLI

browsh es un navegador completamente interactivo, en tiempo real y moderno basado en texto renderizado a TTYs y navegadores. Admite navegación tanto con mouse como con teclado, y es sorprendentemente rico en características para una aplicación puramente basada en terminal. También mitiga los problemas de drenaje de batería que afectan a los navegadores modernos, y con soporte para MoSH, puedes experimentar tiempos de carga más rápidos debido al ancho de banda reducido

browsh-example-usage

View browsh on GitHub Author browsh-org Written in JavaScript


buku - Gestor de marcadores

buku es un gestor de marcadores basado en terminal, con toneladas de opciones de configuración, almacenamiento y uso. También hay una interfaz web opcional y un complemento del navegador, para acceder a tus marcadores fuera de la terminal

View buku on GitHub Author jarun Written in Python


cmus - Navegador / reproductor de música

cmus es un reproductor de música de terminal, controlado con atajos de teclado. Tiene soporte para una amplia gama de formatos de audio y códecs, y permite organizar pistas en listas de reproducción y aplicar configuraciones de reproducción

View cmus on GitHub Author cmus Written in C


cointop - Rastrear precios de criptomonedas

cointop muestra los precios actuales de criptomonedas y rastrea el historial de precios de tu cartera. Admite alertas de precios, gráficos históricos, conversión de moneda, búsqueda difusa y mucho más. Puedes probar la demostración a través de la web en cointop.sh, o ejecutando ssh cointop.sh

View cointop on GitHub Author cointop-sh ![Written in Go](Go Lang&color=00ADD8&logo=go&logoColor=FFFFFF)


ddgr - Busca en la web desde la terminal

ddgr es como googler, pero para DuckDuckGo. Es rápido, limpio y fácil, con soporte para respuestas instantáneas, finalización de búsqueda, búsqueda de bangs y búsqueda avanzada. Respeta tu privacidad por defecto, y también tiene soporte de proxy HTTPS y funciona con Tor

View ddgr on GitHub Author jarun Written in Python

—### micro - Editor de código (mejor que nano)

micro es un editor de código fácil de usar, rápido y extensible con soporte para ratón. Como está empaquetado en un único binario, la instalación es tan simple como curl https://getmic.ro | bash

View micro on GitHub Author zyedidia ![Written in Go](Go Lang&color=00ADD8&logo=go&logoColor=FFFFFF)


khal - Cliente de calendario

khal es una aplicación de calendario de terminal que muestra eventos próximos, vistas de mes y agenda. Puedes sincronizarla con cualquier calendario CalDAV, y agregar, editar y eliminar eventos directamente

View khal on GitHub Author pimutils Written in Python


mutt - Cliente de correo electrónico

mutt es un clásico, un cliente de correo basado en terminal para enviar, leer y gestionar correos electrónicos. Soporta todos los protocolos de correo y formatos de buzón principales, permite adjuntos, BCC/CC, hilos, listas de correo y notificaciones de estado de entrega

View mutt on GitHub Author muttmua Written in C


newsboat - Lector de noticias RSS / ATOM

newsboat es un lector y agregador de fuentes RSS, para leer noticias, blogs y seguir actualizaciones directamente desde la terminal

View newsboat on GitHub Author newsboat Written in C++


rclone - Gestionar almacenamiento en la nube

rclone es una utilidad práctica para sincronizar archivos y carpetas con varios proveedores de almacenamiento en la nube. Se puede invocar directamente desde la línea de comandos, o integrarse fácilmente en un script como reemplazo de aplicaciones de sincronización de escritorio pesadas

View rclone on GitHub Author rclone ![Written in Go](Go Lang&color=00ADD8&logo=go&logoColor=FFFFFF)


taskwarrior - Gestión de tareas y tareas pendientes

task es una aplicación CLI de gestión de tareas y tareas pendientes. Es simple e discreta, pero también increíblemente poderosa y escalable, con características avanzadas de organización y consulta integradas. También hay muchos (¡700+!) complementos adicionales para extender su funcionalidad e integrarla con servicios de terceros

View taskwarrior on GitHub Author GothenburgBitFactory Written in C++


tuir - Interfaz de usuario de terminal para Reddit

tuir es excelente si quieres parecer que estás trabajando, ¡mientras realmente estás navegando Reddit! Tiene atajos de teclado intuitivos, temas personalizados, y también puede renderizar imágenes y contenido multimedia. También está haxor para Hacker News

View tuir on GitLab Author ajak Written in Python



Suites de desarrollo CLI

httpie - Cliente de prueba HTTP / API

httpie es un cliente HTTP, para probar, depurar y usar APIs. Soporta todo lo que esperarías - HTTPS, proxies, autenticación, encabezados personalizados, sesiones persistentes, análisis JSON. El uso es simple con una sintaxis expresiva y salida coloreada. Como otros clientes HTTP (Postman, Hopscotch, Insomnia, etc), HTTPie también incluye una interfaz web

View httpie on GitHub Author httpie Written in Python


lazydocker - Aplicación completa de gestión de Docker

lazydocker es una aplicación de gestión de Docker que te permite ver todos los contenedores e imágenes, gestionar su estado, leer registros, verificar el uso de recursos, reiniciar/reconstruir, analizar capas, limpiar contenedores, imágenes y volúmenes sin usar, y mucho más. Te ahorra tener que recordar, escribir y encadenar múltiples comandos de Docker.

View lazydocker on GitHub Author jesseduffield ![Written in Go](Go Lang&color=00ADD8&logo=go&logoColor=FFFFFF)


lazygit - Aplicación completa de gestión de Git

lazygit es un cliente git visual, en la línea de comandos. Agrega, confirma e impulsa archivos fácilmente, resuelve conflictos, compara diferencias, gestiona registros, y realiza operaciones complejas como squashes y rewinds. Hay atajos de teclado para todo, colores, y es fácilmente configurable y extensible

Ver lazygit en GitHub Autor jesseduffield Escrito en Go


kdash - Aplicación de panel de control de Kubernetes

kdash es una herramienta integral de gestión de Kubernetes. Ver métricas de nodos, monitorear recursos, transmitir registros de contenedores, analizar contextos y gestionar nodos, pods y espacios de nombres

Ver kdash en GitHub Autor kdash-rs Escrito en Rust


gdp-dashboard - Depurador visual de GDP

gdp-dashboard añade un elemento visual al Depurador GNU, para depurar programas en C y C++. Analiza fácilmente la memoria, avanza a través de puntos de interrupción y visualiza registros

Ver gdb-dashboard en GitHub Autor cyrus-and Escrito en Python



Servicios Externos de CLI

ngrok - Proxy inverso para compartir localhost

ngrok expone de forma segura* tu localhost a internet detrás de una URL única. Esto te permite compartir en lo que estás trabajando con tus colegas remotos en tiempo real. El uso es muy simple, pero también tiene muchas características avanzadas para cosas como autenticación, webhooks, firewalls, inspección de tráfico, dominios personalizados/comodín y mucho más

Ver ngrok en GitHub Autor inconshreveable Escrito en Go


tmate - Compartir una sesión de terminal por internet

tmate te permite compartir instantáneamente una sesión de terminal en vivo con alguien en otra parte del mundo. Funciona en diferentes sistemas, admite control de acceso/autenticación, puede ser autohospedado y tiene todas las características de Tmux

Ver tmate en GitHub Autor tmate-io Escrito en C


asciinema - Grabación y compartición de sesiones de terminal

asciinema es muy útil para grabar, compartir e incrustar fácilmente una sesión de terminal. Excelente para mostrar algo que has construido o para demostrar los pasos de línea de comandos para un tutorial. A diferencia de los videos de grabación de pantalla, el usuario puede copiar-pegar el contenido, cambiar el tema sobre la marcha y controlar la reproducción

https://asciinema.org/a/335480?speed=3

Ver asciinema en GitHub Autor asciinema Escrito en Python


navi - Hoja de trucos interactiva

navi te permite navegar por hojas de trucos y ejecutar comandos. Los valores sugeridos para los argumentos se muestran dinámicamente en una lista. Escribe menos, reduce errores y evita tener que memorizar miles de comandos. Se integra con tldr y cheat.sh para obtener contenido, pero también puedes importar otras hojas de trucos o incluso escribir las tuyas propias

https://asciinema.org/a/406461?speed=2

Ver navi en GitHub Autor denisidoro Escrito en Rust


transfer.sh - Compartición rápida de archivos

transfer hace que cargar y compartir archivos sea realmente fácil, directamente desde la línea de comandos. Es gratuito, admite encriptación, te proporciona una URL única y también puede ser autohospedado.
He escrito una función auxiliar de Bash para facilitar un poco el uso, puedes encontrarla aquí o pruébala ejecutando bash <(curl -L -s https://alicia.url.lol/transfer)

Ver transfer.sh en GitHub Autor dutchcoders Escrito en Go


surge - Desplegar un sitio en segundos

surge es un proveedor de alojamiento estático gratuito al que puedes desplegar directamente desde la terminal en un solo comando, ¡solo ejecuta surge desde tu directorio dist! Admite dominios personalizados, certificados SSL automáticos, soporte pushState, soporte de recursos de origen cruzado y ¡es gratuito!


wttr.in - Consultar el clima

wttr.in es un servicio que muestra el clima en un formato que es fácil de digerir en la línea de comandos. Solo ejecuta curl wttr.in o curl wttr.in/London para probarlo. Hay parámetros de URL para personalizar qué datos se devuelven, así como el formato

Ver wttr.in en GitHub Autor chubin Escrito en Python



CLI Diversión

cowsay - Haz que una vaca ASCII diga tu mensaje

cowsay es una vaca parlante configurable. Se basa en el original de Tony Monroe

Ver cowsay en GitHub Autor piuccio Escrito en JavaScript


figlet - Mostrar texto como arte ASCII grande

figlet muestra texto como arte ASCII

Ver figlet en GitHub Autor cmatsuoka Escrito en C


lolcat - Hacer que la salida de la consola sea de color arcoíris

lolcat hace que cualquier texto que se le pase sea de color arcoíris

Ver lolcat en GitHub Autor busyloop Escrito en Ruby


neofetch - Mostrar datos del sistema e información de la distribución

neofetch imprime información de la distribución y del sistema (para que puedas presumir que usas Arch en r/unixporn)

Ver neofetch en GitHub Autor dylanaraps Escrito en Bash

Como ejemplo, estoy usando cowsay, figlet, lolcat y neofetch para crear un MOTD personalizado basado en la hora que se muestra al usuario cuando inicia sesión por primera vez. Los saluda por su nombre, muestra información del servidor, hora, fecha, clima e IP. Aquí está el código fuente.



Instalaciones y Gestión

La mayoría de nosotros tenemos un conjunto central de aplicaciones y utilidades de CLI en las que confiamos. Configurar una máquina nueva e instalar individualmente cada programa se volvería tedioso muy rápidamente. Por lo tanto, la tarea de instalar y actualizar tus aplicaciones de terminal es la candidata perfecta para la automatización. Aquí hay algunos scripts de ejemplo que he escrito, que se pueden colocar fácilmente en tus dotfiles o simplemente ejecutar de forma independiente para asegurarte de que nunca te falta una aplicación.

Para usuarios de MacOS, el método más fácil es usar Homebrew. Solo crea un Brewfile (con touch ~/.Brewfile), luego enumera cada una de tus aplicaciones y ejecuta brew bundle. Puedes mantener tu lista de paquetes respaldada poniéndola en un repositorio de Git. Aquí hay un ejemplo para comenzar: GitHub - Lissy93/Brewfile: 🍺 My list of packages to be installed on MacOS via Homebrew, for the ultimate dev setup

En Linux, generalmente quieres usar el gestor de paquetes nativo (por ejemplo, pacman, apt). Como ejemplo, aquí hay un script para instalar las aplicaciones anteriores en sistemas Arch Linux

Las aplicaciones de escritorio en Linux se pueden gestionar de manera similar a través de Flatpak. De nuevo, aquí hay un script de ejemplo :slight_smile:


Conclusión

… Así que eso es todo - una lista de aplicaciones CLI útiles y un método para instalarlas y mantenerlas actualizadas en tus sistemas.

Espero que algunas de estas sean útiles para algunos de ustedes :slight_smile:

¡Me encantaría saber cuáles son tus aplicaciones CLI favoritas, déjame saber en los comentarios a continuación!

Información Adicional

Lo que no se incluyó

  • Esta lista no incluye lo básico, como Vim, Tmux, Ranger, ZSH, Git, etc - que probablemente ya estés usando
  • Tampoco he incluido nada demasiado nicho, o específico solo para un pequeño número de usuarios
  • Nada específico del sistema, o que no sea multiplataforma (Linux/Unix, MacOS) está incluido
  • Y no he incluido aplicaciones que se relacionen con la terminal, pero que no sean aplicaciones CLI (como emuladores de terminal)
  • Para la mayoría de los proyectos listados, hay una plétora de alternativas que logran cosas similares, por brevedad tampoco se incluyeron

Crédito

Un enorme agradecimiento a los autores y comunidades detrás de cada una de estas aplicaciones. Sin ellos y su arduo trabajo, nuestra vida en la línea de comandos sería mucho menos impresionante. Cuando ha sido posible, he intentado acreditar a los autores, pero si me he perdido alguno - déjame saber a continuación, y haré una actualización

Comentarios

¿Qué me he perdido? ¡Me encantaría saber cuáles son tus aplicaciones CLI favoritas, especialmente si hay algo impresionante que me haya perdido!

También me gustaría escuchar tus pensamientos y sugerencias - siempre estoy buscando mejorar :slight_smile:

Insignias

Aquí está el script que hice para generar las insignias de autor, idioma y estrellas de GitHub:

{ details Generador de Insignias de Repositorio }

{ enddetails }

Ver repo-badge-maker en GitHub Autor Lissy93

Encontrar Más

Si estabas disfrutando esto, te recomiendo que también consultes:

Si eres nuevo en la línea de comandos, entonces The Art of Command Line por Joshua Levy es un excelente recurso, al igual que la Guía de Bash por Adnan Ahmed.

Y si estás buscando inspiración, te encantará r/unixporn :high_voltage:


Si te gusta este tipo de cosas,
considera seguir para más :slight_smile:
Seguir a Lissy93 en GitHubSeguir a Lissy_Sykes en Twitter