Curso sobre comandos de linux
🎯 Objetivo del módulo Entender cómo fluye la información entre comandos, cómo guardar resultados, encadenar comandos y gestionar errores.
📌 Idea clave En Linux los comandos leen de entrada estándar y escriben a salida estándar. Nosotros decidimos de dónde viene y a dónde va esa información.
🧠 Conceptos fundamentales
📥 Entrada estándar (STDIN)
Lo que el comando recibe.
📤 Salida estándar (STDOUT)
Lo que el comando muestra normalmente.
❌ Error estándar (STDERR)
Mensajes de error.
🧩 Esquema mental
[comando] ---> salida
|
└── error
Con redirecciones y pipes podemos controlar ese flujo.
🗂️ Operadores del módulo
| Operador | Función | |
|---|---|---|
> | redirigir salida (sobrescribe) | |
>> | redirigir salida (añade) | |
< | redirigir entrada | |
| ` | ` | pipe (encadenar comandos) |
2> | redirigir errores | |
&> | redirigir salida + errores |
🔸 > (redirigir salida)
🧾 Descripción
Envía la salida de un comando a un archivo sobrescribiéndolo.
🧪 Ejemplo
1ls > listado.txt
✔ Crea listado.txt
✔ Borra el contenido anterior si existía
🔸 >> (añadir salida)
🧾 Descripción
Añade la salida al final del archivo.
🧪 Ejemplo
1echo "línea nueva" >> notas.txt
✔ No borra lo anterior
🔸 < (redirigir entrada)
🧾 Descripción
Usa un archivo como entrada del comando.
🧪 Ejemplo
1wc -l < archivo.txt
📌 Cuenta líneas sin mostrar el nombre del archivo
🔸 | (pipe)
🧾 Descripción
Envía la salida de un comando como entrada de otro.
🧠 Regla de oro
Un comando → procesa texto → otro comando
🧪 Ejemplos clave
1ls | wc -l 2ps aux | grep root 3cat archivo.txt | sort | uniq
🔥 Ejemplo real DevOps
1ps aux | grep nginx | wc -l
🔸 2> (redirigir errores)
🧾 Descripción
Envía los errores a un archivo.
🧪 Ejemplo
1find / -name "*.log" 2> errores.txt
🧪 Ignorar errores
1find / -name "*.log" 2>/dev/null
📌 /dev/null = “agujero negro”
🔸 &> (todo)
🧾 Descripción
Redirige salida y errores al mismo archivo.
🧪 Ejemplo
1comando &> salida.txt
🪟 Equivalente en Windows
CMD
1dir > salida.txt 2dir 2> errores.txt 3dir | find "txt"
PowerShell
1Get-ChildItem | Measure-Object 2Get-Content log.txt | Select-String "error"
📌 PowerShell trabaja con objetos, no solo texto.
🧠 Combinaciones reales MUY importantes
📄 Guardar resultados
1grep error log.txt > errores.txt
📄 Añadir logs
1echo "nuevo evento" >> eventos.log
🔍 Filtrar información
1cat usuarios.txt | sort | uniq | wc -l
🔥 Debugging
1comando 2>/dev/null
⚠️ Errores comunes
- ❌ Usar
>cuando querías>> - ❌ Olvidar redirigir errores
- ❌ Pensar que
|copia archivos - ❌ No entender qué entra y qué sale
🧠 Buenas prácticas
- ✔ Piensa en flujos de datos
- ✔ Divide problemas en comandos pequeños
- ✔ Usa pipes
- ✔ Redirige errores conscientemente
📌 Resumen
- ✔ Controlas la salida
- ✔ Encadenas comandos
- ✔ Gestionas errores
- ✔ Ya piensas como Linux