757 - Las 20 herramientas que dominaron mi Linux en 2025

757 - Las 20 herramientas que dominaron mi Linux en 2025

Descubre las 20 herramientas de terminal que dominaron mi Linux en 2025, desde la revolución de Rust con Cargo hasta Neovim, Docker y la eficiencia de uv.

1:25
-3:15

Este año con el tema de lo mas de 2025, he repasado los últimos episodios del año pasado, y me he encontrado con que no soy nada original. Ya lo hice el año anterior, y probablemente el anterior del anterior, aunque ya no he querido investigar mas. No quería desilusionarme.

El del año pasado lo titulé Lo que más me impactó en Linux en 2024. Así que me puse a revisar lo que hice el año pasado para comparar con lo que he hecho este año y darle una vuelta. Pero, he querido ser algo mas matemático, algo mas exacto. En lugar de basarme en mi intuición, he querido basarme en datos. Y para ello he recurrido a mis historiales de comandos.

La última vez que recuerdo ver un recopilatorio de herramientas que más se utilizan en Linux fue hace unos años. Concretamente en 2021, en un post de @erickgnavar, al que contestó @androsfenollosa y al que también respondió @miriamgonp y yo mismo por supuesto.

Las 20 herramientas que dominaron mi Linux en 2025

Antes de meterme en harina

Lo cierto es que antes de meterme en harina, quiero repasar el año anterior, y comentar algunos puntos de lo que más me impactó de 2024.

De las herramientas que mencioné, se han consolidado fish, yazi, pass, yadm y jinrender. Sin embargo, termux sigue siendo mi asignatura pendiente, pero porque no estoy utilizando la tableta Android, todo lo que me gustaría. Y, por otro lado, neovim y la IA han pasado a un primer plano totalmente.

Aquí sin lugar a dudas el gran damnificado ha sido Obisidan, que he dejado de utilizarlo por completo, y he vuelto a Neovim, de donde nunca debí salir. Algo que he comentado en más de un episodio anterior.

Siendo más papista que el Papa

La cuestión es que para tirar de datos, he utilizado los historiales de comandos de Bash y Fish. En el caso de Bash, he utilizado el siguiente comando,

history | awk '{CMD[$1]++ ; count++} END {for (a in CMD) print CMD[a] " " CMD[a]/count*100 "% " a}' | grep -v "./" | column -c3 -s " " -t | sort -nr | head -n 10

Sin embargo, al repasarlo, he visto que no eran los más utilizados en el último año, sino que eran los más utilizados y punto. Así que he decidido utilizar el historial de Fish, que tiene la ventaja de almacenar las fechas de ejecución de los comandos. De esta forma, he podido filtrar los comandos ejecutados en el último año. Te dejo a continuación la función de Fish que he utilizado para obtener los datos.

function top-comandos
    set -l un_ano_atras (date -d "1 year ago" +%s)
    cat ~/.local/share/fish/fish_history | awk -v desde="$un_ano_atras" '
        /^- cmd:/ { 
            split($0, parts, " ");
            current_cmd = parts[3]; 
        }
        /^[ ]+when:/ {
            split($0, t, ": ");
            if (t[2] > desde) {
                if (current_cmd !~ /^history/ && current_cmd !~ /^awk/ && current_cmd != "" && current_cmd != "set") {
                    CMD[current_cmd]++;
                    total++;
                }
            }
        }
        END {
            if (total == 0) { print "No hay datos."; exit; }
            for (c in CMD) {
                pct = (CMD[c]/total)*100;
                num_hashes = int(pct / 2);
                if (num_hashes > 20) num_hashes = 20;
                bar = "";
                for (i=1; i<=20; i++) bar = bar (i <= num_hashes ? "█" : "░");
                printf "%-15.15s %s %6.2f%% (%d veces)\n", c, bar, pct, CMD[c]
            }
        }' | sort -rnk3 | head -n 20
end
funcsave top-comandos

Y mis resultados,

cd              ███░░░░░░░░░░░░░░░░░   7.42% (611 veces)
sudo            ██░░░░░░░░░░░░░░░░░░   5.56% (458 veces)
pnpm            ██░░░░░░░░░░░░░░░░░░   4.68% (385 veces)
git             ██░░░░░░░░░░░░░░░░░░   4.57% (376 veces)
curl            ██░░░░░░░░░░░░░░░░░░   4.57% (376 veces)
nvim            ██░░░░░░░░░░░░░░░░░░   4.20% (346 veces)
rm              █░░░░░░░░░░░░░░░░░░░   3.88% (319 veces)
cargo           █░░░░░░░░░░░░░░░░░░░   3.78% (311 veces)
z               █░░░░░░░░░░░░░░░░░░░   3.55% (292 veces)
cat             █░░░░░░░░░░░░░░░░░░░   3.05% (251 veces)
paru            █░░░░░░░░░░░░░░░░░░░   2.90% (239 veces)
docker          █░░░░░░░░░░░░░░░░░░░   2.88% (237 veces)
rg              █░░░░░░░░░░░░░░░░░░░   2.43% (200 veces)
just            █░░░░░░░░░░░░░░░░░░░   2.08% (171 veces)
mv              ░░░░░░░░░░░░░░░░░░░░   1.98% (163 veces)
cp              ░░░░░░░░░░░░░░░░░░░░   1.77% (146 veces)
yadm            ░░░░░░░░░░░░░░░░░░░░   1.64% (135 veces)
uv              ░░░░░░░░░░░░░░░░░░░░   1.64% (135 veces)
mkdir           ░░░░░░░░░░░░░░░░░░░░   1.54% (127 veces)
vim             ░░░░░░░░░░░░░░░░░░░░   1.48% (122 veces)

Los Supervivientes

Me llama la atención que cd siga siendo el mas utilizado, y creo que es simplemente por costumbre. zoxide (z) debería haber reemplazado a cd, pero no ha sido así. Y es que como en algunos entornos no tengo zoxide sigo tirando de cd por costumbre, aun cuando con z que es un 100% mas rápido de escribir que cd tardo la mitad.

Por otro lado, sudo es un clásico que siempre está ahí. Y es que no hay día que no lo utilice. En ocasiones, me planteo si cuando encadeno comandos de administración no debería cambiar a root, pero…, tienes que reconocer que es muy cómodo utilizar sudo.

Por otro lado, entre el top 20 se han colado los típicos, los básicos, los clásicos de administración de archivos puro como rm, mv, cp y mkdir. Y es que aunque utilizo yazi como administrador de archivos, en la mayoría de ocasiones me resulta mas rápido tirar de línea de comandos para estas operaciones simples.

La Revolución del Desarrollo

No puedo negar a que dedico el tiempo libre. Está muy claro. En las primeras posiciones se encuentran pnpm, cargo y uv. Y la verdad es que no me sorprende para nada que no parezca npm o pip, si no sus alternativas. Estoy muy cómodo con pnpm para gestionar mis proyectos en TypeScript, creo que fue todo un acierto.

Y que decir de uv, la herramienta para gestionar mis proyectos en Python. Me tiene totalmente enamorado. Y es que es una herramienta que me permite gestionar mis entornos virtuales de una forma sencilla y rápida.

Y por supuesto cargo. Que cargo aparezca como uno de los mas utilizados deja muy claro que Rust se ha convertido en uno de mis lenguajes de programación favoritos, sino en el favorito. Y es que la combinación de rendimiento, seguridad y ecosistema hacen que sea una opción muy atractiva para muchos tipos de proyectos. Hoy en día difícilmente me planteo hacer un proyecto de línea de comandos sin utilizar Rust.

Ahora, se nota que estoy dedicando tiempo a implementar aplicaciones web, donde el frontend es en React con TypeScript y el backend en Rust con frameworks como Axum. Espero que este 2026, me permita liberar las tres aplicaciones sobre las que estoy trabajando y alguna mas.

Por supuesto, no son las únicas herramientas de desarrollo que utilizo, y que describen claramente a que me dedico. También puedes encontrar git, curl, docker y just.

Sobre just he escrito en mas de una ocasión. Es una herramienta que me permite gestionar mis tareas de desarrollo de una forma sencilla y rápida. Y es que just es como un make pero mucho mas sencillo de utilizar y entender.

Y docker…, ¿que puedo decir de docker?. Hoy por hoy sin Docker, dificilmente podría desarrollar mis aplicaciones. Y es que Docker me permite crear entornos de desarrollo aislados y reproducibles, lo que facilita mucho el trabajo en equipo y la gestión de dependencias.

La verdad es que no me había fijado en el uso que estoy haciendo de curl, pero tiene sentido. Lo utilizo para probar mis APIs y para descargar recursos desde la línea de comandos. Y visto así, tiene todo el sentido del mundo.

Navegación y búsqueda moderna

Aunque sigo tirando de las herramientas tradicionales, que todavía se encuentran en primera posición, las modernas empiezan a colarse entre las primeras, y me refiero a z, rg y just.

Por supuesto que para mi, la que mas tiempo me ha permitido ahorrar es rg, mucho mas que z. Aunque z me permite moverme rápidamente por el sistema de archivos, rg me permite buscar dentro de los archivos de una forma rápida y eficiente. Y es que rg es una herramienta que ha revolucionado la forma en que busco información en mis proyectos y archivos. Por supuesto, no solo lo utilizo directamente en terminal sino que también lo utilizo en Neovim y es una autentica delicia.

Respecto a z, decirte que si zoxide no forma parte de tu stack de herramientas, deberías plantearte seriamente el incluirla. Te aseguro que una vez que la pruebas, no puedes volver a vivir sin ella. Si todavía sigues haciendo cd ../../.. te puedo asegurar que estás perdiendo el tiempo, z es como teletransportarse por el sistema de archivos.

El dúo fantástico. Configuración y edición

Aquí no engaño a nadie, nvim y yadm son dos herramientas que utilizo a diario. Y es que no concibo mi día a día sin ellas.

Aunque como decía al principio del episodio, durante un tiempo estuve utilizando Obsidian para gestionar mis notas y mi documentación, al final he vueto a Neovim. Sin lugar a dudas donde realmente me siento en casa. Tanto para escribir artículos como para escribir código.

He encontrado los complementos perfectos para poder navegar de forma sencilla entre los miles de notas, y gracias al gran RipGrep, es muy sencillo localizar notas relacionadas.

Y yadm, mi querido yadm, que me permite gestionar mis configuraciones de una forma sencilla y rápida. Y es que gracias a yadm, puedo tener mis configuraciones sincronizadas entre todos mis equipos, lo que facilita mucho el trabajo y la gestión de mis entornos de desarrollo.

yadm junto con pass y jinrender se han convertido en herramientas imprescindibles para la gestión de archivo de configuración, y sin los cuales ahora mismo no sabría como trabajar.

Conclusión

Ahora ya tengo mi herramienta, y el episodio del próximo año, será mucho mas fácil de hacer, y sobre todo mucho mas exacto, que el del pasado 2024. Aquí no hay ni trampa ni cartón, lo que sale el realmente lo que he hecho.


Más información,

Deja una respuesta

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