Si hay algo que distingue a un administrador de sistemas experimentado es su capacidad para resolver problemas complejos con una sola línea de comandos. Los one-liners de Linux no solo son elegantes, sino que representan la diferencia entre pasar 10 minutos haciendo clics en una GUI y resolverlo en 3 segundos desde la terminal.

En este artículo te traigo 10 comandos de una línea que todo sysadmin —ya sea en Debian, Ubuntu, CentOS, Rocky Linux o AlmaLinux— debería tener en su cinturón de herramientas. Son prácticos, algunos curiosos, y todos te harán lucir como todo un mago de la terminal.

1. Crear múltiples directorios de una vez

Olvídate del mkdir uno por uno. Con las llaves {} puedes crear varios directorios en una sola línea:

mkdir -p -v /home/user/proyectos/{frontend,backend,docs,assets}

Esto crea 4 directorios de un solo golpe. El flag -p evita errores si ya existen, y -v te muestra qué se creó. Ideal para estructurar proyectos rápidamente.

2. Reemplazar texto en múltiples archivos sin abrirlos

¿Necesitas cambiar una URL, un nombre de base de datos o una contraseña en 20 archivos de configuración? sed al rescate:

sed -i 's#old_url.com#new_url.com#g' config/*.php

El -i edita los archivos «in-place» (directamente). Usamos # como separador para evitar confusiones si la URL contiene barras /. Un truco que te ahorra horas de edición manual.

3. Compartir un directorio vía HTTP al instante

Necesitas pasarle un archivo a un compañero en la misma red y no tienes USB, ni SCP, ni ganas de montar un servidor web. Python te salva:

cd /ruta/al/directorio && python3 -m http.server 8888

Esto levanta un servidor HTTP en el puerto 8888 sirviendo todo el contenido del directorio actual. Accede desde cualquier navegador con http://tu-ip:8888. Funciona en cualquier distribución con Python 3.

4. Top 10 IPs que golpean tu servidor web

¿Quieres saber quién está visitando (o atacando) tu servidor? Un clásico de los administradores:

cat /var/log/nginx/access.log | cut -f 1 -d ' ' | sort | uniq -c | sort -hr | head -n 10

Este pipeline extrae las IPs del log de Nginx, las cuenta, las ordena por frecuencia y te muestra las 10 más activas. También funciona con Apache cambiando la ruta del log. Ideal para detectar patrones sospechosos.

5. Monitorizar memoria RAM cada 5 segundos

¿Sin htop? No hay problema. watch ejecuta cualquier comando periódicamente y resalta los cambios:

watch -n 5 -d 'free -m'

Actualiza el uso de memoria cada 5 segundos y resalta en negrita los valores que cambian. El flag -d (differences) es clave para detectar fugas de memoria en tiempo real.

6. Hacer backup cifrado vía SSH

Combina tar y ssh para transferir archivos comprimidos de forma segura sin dejar archivos temporales:

tar czf - /ruta/origen | ssh usuario@servidor "tar xzf - -C /ruta/destino"

Comprime todo sobre la marcha, lo envía cifrado por SSH, y lo descomprime directo en el destino. No ocupa espacio extra en disco. Un must para backups rápidos entre servidores.

7. Buscar errores del sistema con journalctl

Cuando algo falla y no sabes por dónde empezar, este mega-pipeline te da una visión general de los procesos problemáticos:

journalctl --no-pager --since today --grep 'fail|error|fatal' --output json | jq '._EXE' | sort | uniq -c | sort -nr

Filtra los logs del día de hoy por errores, extrae los ejecutables involucrados, los cuenta y los ordena. Descubrirás rápidamente qué demonio está fallando. Necesitas tener jq instalado.

8. Consultar el clima desde la terminal

¿Te vas de viaje y quieres saber el clima sin abrir el navegador? Esta función te saca de apuros:

weather() { curl -s --connect-timeout 3 -m 5 "http://wttr.in/${1:-Caracas}"; }

Agrega esta función a tu .bashrc y luego solo escribe weather Madrid o weather para ver el clima de tu ciudad por defecto. wttr.in devuelve una terminal con gráficos ASCII, temperatura y pronóstico.

9. Actualizar todos los repositorios Git de un directorio

Si manejas múltiples proyectos Git, actualizarlos uno por uno es tedioso. Este one-liner los actualiza todos:

for i in */.git; do cd "$(dirname "$i")" && git pull && cd ..; done

Itera sobre todos los subdirectorios que contienen una carpeta .git, hace git pull en cada uno y vuelve al directorio raíz. Ideal para cuando tienes 10+ repositorios clonados localmente.

10. Calculadora rápida desde la terminal

Olvídate de abrir la calculadora gráfica. Con esta función resuelves operaciones aritméticas con precisión variable:

qqbc() { echo "scale=${2:-2}; $1" | bc -l; }

Uso: qqbc "10/3"3.33 (2 decimales por defecto). Si necesitas más precisión: qqbc "10/3" 63.333333. bc viene preinstalado en prácticamente todas las distribuciones Linux.

Bonus: tu propia calculadora con Python

Si bc te sabe a poco, Python puede redondear números flotantes al vuelo:

echo "22.67892" | python3 -c "print(f'{round(float(input()))}')"

Útil cuando trabajas con scripts que devuelven decimales y necesitas enteros limpios para logs o reportes.

Conclusión

Los one-liners son mucho más que comandos ingeniosos: son la manifestación práctica del poder de la terminal Linux. Cada uno de estos ejemplos resuelve un problema real de forma eficiente y elegante.

¿Tienes algún one-liner favorito que no aparezca aquí? ¡Déjalo en los comentarios y lo agregamos a la lista! 🐧