Terminal Linux: Los Comandos que Usarás Cada Día
Ya sea haciendo SSH a un servidor de producción, ejecutando contenedores Docker, o navegando en tu máquina de desarrollo, el terminal Linux es inevitable. Esta no es una referencia exhaustiva — son los 50 comandos que escribirás con más frecuencia, con los flags que importan.
Archivos y Navegación
# ¿Dónde estoy?
pwd
# Listar archivos (legible, todos, formato largo)
ls -lah
# Cambiar directorio
cd /var/log
cd .. # padre
cd ~ # home
cd - # directorio anterior
# Crear archivos y directorios
touch file.txt
mkdir -p ruta/a/directorio/anidado
# Copiar, mover, renombrar
cp file.txt backup.txt
cp -r dir/ dir-backup/ # recursivo
mv nombre-viejo.txt nombre-nuevo.txt
# Eliminar (¡cuidado!)
rm file.txt
rm -rf directorio/ # recursivo, forzado — ¡sin deshacer!Leyendo Archivos
# Imprimir archivo completo
cat config.yml
# Primeras/últimas líneas
head -20 app.log
tail -50 app.log
# Seguir log en tiempo real (indispensable para debug)
tail -f /var/log/nginx/error.log
# Navegar archivos grandes
less archivo-enorme.log # q para salir, / para buscar
# Contar líneas, palabras, caracteres
wc -l data.csv # conteo de líneasBuscando
# Encontrar archivos por nombre
find . -name "*.js" -type f
find /var/log -name "*.log" -mtime -7 # modificados en los últimos 7 días
# Buscar contenido de archivos
grep "error" app.log
grep -r "TODO" src/ # recursivo
grep -rn "function" --include="*.ts" # con número de línea, extensión específica
grep -i "warning" app.log # case insensitive
# Encontrar y actuar
find . -name "*.tmp" -exec rm {} \; # encontrar y eliminarPermisos
# Ver permisos
ls -la
# drwxr-xr-x = directorio, dueño rwx, grupo r-x, otros r-x
# Cambiar permisos
chmod 755 script.sh # rwxr-xr-x
chmod +x script.sh # agregar ejecución
chmod 600 .env # rw------- (solo dueño)
# Cambiar dueño
chown user:group archivo
chown -R www-data:www-data /var/www/Procesos
# ¿Qué está corriendo?
ps aux
ps aux | grep nginx
# Visor interactivo de procesos
top # básico
htop # mejor (instalar por separado)
# Matar proceso
kill PID
kill -9 PID # force kill (SIGKILL)
killall nginx # matar por nombre
# Ejecutar en background
nohup ./tarea-larga.sh & # sobrevive al logout
# Verificar qué está escuchando en un puerto
ss -tulnp | grep 3000
lsof -i :3000Disco
# Vista general de espacio en disco
df -h
# Tamaños de directorios
du -sh /var/log/
du -sh */ | sort -rh | head -10 # top 10 dirs más grandes
# Memoria
free -hRed
# Descargar
curl -O https://example.com/file.zip
wget https://example.com/file.zip
# Petición HTTP
curl -X POST https://api.example.com/data \
-H "Content-Type: application/json" \
-d '{"key": "value"}'
# Consulta DNS
dig example.com
# Verificar conectividad
ping -c 4 google.com
# Mostrar direcciones IP
ip addrCompresión
# Crear tar.gz
tar -czf archivo.tar.gz directorio/
# Extraer tar.gz
tar -xzf archivo.tar.gz
# Crear/extraer zip
zip -r archivo.zip directorio/
unzip archivo.zipConsejos de Productividad
# Historial de comandos
history | grep "docker"
!123 # re-ejecutar comando #123
!! # re-ejecutar último comando
sudo !! # re-ejecutar último comando como root
# Pipe y redirección
cat file.txt | grep "error" | wc -l # contar líneas con error
comando > salida.txt # sobrescribir
comando >> salida.txt # append
comando 2>&1 # redirigir stderr a stdout
# Aliases (agregar a ~/.bashrc o ~/.zshrc)
alias ll='ls -lah'
alias gs='git status'
alias dc='docker compose'Referencia interactiva: Cheatsheet Linux — búsqueda, categorías, clic para copiar cualquier comando.