Entendiendo la Terminal Linux: De Usuario a Experto
Entendiendo la Terminal Linux
Aprendiendo sobre Linux siempre veía en tutoriales de YouTube que cuando explican cosas en la terminal y a pesar que mencionan lo que iban escribiendo no entendía la flags no sabia que era -zxvf , por ejemplo para extraer archivos .tar, no comprendía el que hace cada una de esa letras y si el orden los afecta o que pasa si omito una o las herramientas como curl o grep.
Asi que tome el asunto en serio y decidí hacer lo que toda persona haría!! Googlear!! y también preguntar a una IA (obvio).
Para entender y que por fin me entre todo esto en el cerebro hice una cartilla para pasar de “usar comandos” a “entender el sistema”. No se trata solo de memorizar nombres, sino de entender la filosofía Unix: pequeñas herramientas que hacen una sola cosa muy bien y que se pueden conectar entre sí.
Aquí tienen! una hoja de ruta y un “mini-curso” diseñado para tu que por fin veamos con claridad lo que hacemos.
1. El lenguaje de la terminal: Banderas y Argumentos
Las banderas (flags) no son aleatorias; siguen estándares que, una vez entiendes, te permiten “adivinar” cómo funcionan comandos que nunca has usado.
- Banderas cortas (
-a): Usan un solo guion y una letra. Se pueden agrupar.ls -l -a -hes lo mismo quels -lah. - Banderas largas (
--verbose): Usan dos guiones. Son más descriptivas y fáciles de leer en scripts. - Argumentos con valor: Algunas banderas necesitan un dato extra, como
curl -o archivo.zip [URL]. Aquí-oindica que el siguiente texto es el nombre de salida.
Pro Tip: Si no sabes qué hace una bandera, el comando sagrado es
man [comando](ej.man grep). Si es muy largo, usa[comando] --help.
Pro Tip 2: Un guión para letras o letras , dos guiones par palabras.
2. Herramientas Esenciales (El “Kit de Supervivencia”)
Para ser un pro en Programación, SRE o usuario convencional como tu y como yo debemos dominar estas categorías:
A. Procesamiento de Texto (Las “Navajas Suizas”)
-
grep: Busca patrones dentro de archivos.grep -i "error" log.txt(ignora mayúsculas).grep -A 3 "error" log.txt(muestra el error y las 3 líneas siguientes).
-
sed: El editor de flujo. Sirve para buscar y reemplazar texto sin abrir el archivo.sed -i 's/viejo/nuevo/g' config.txt(cambia “viejo” por “nuevo” en todo el archivo).
-
awk: Mini-lenguaje para procesar columnas.awk '{print $1}' lista.txt(imprime solo la primera columna de un archivo).
-
echo: Utilizada para mostrar texto, cadenas o el valor de variables en la terminal es como imprimir.echo "Hola, Mundo". Imprime en consola Hola,Mundo.
B. Redes y Transferencia
curl: Para interactuar con APIs o descargar archivos.curl -I google.com(trae solo las cabeceras HTTP).wget: Ideal para descargas recursivas o de fondo.- **
ss/netstat**: Para ver qué puertos están abiertos y qué procesos los usan.
3. Conceptos de “Poder”: Tuberías y Redirecciones
Esto es lo que separa a un novato de un experto. Linux ve todo como un flujo de datos.
-
Pipes (
|): Pasa la salida de un comando como entrada del siguiente. -
Ejemplo:
cat logs.txt | grep "404" | wc -l(Lee el archivo, busca los errores 404 y cuenta cuántos hay). -
Redirecciones (
>,>>,2>): -
>: Guarda la salida en un archivo (sobrescribe). -
>>: Añade la salida al final de un archivo. -
2>: Redirige solo los errores (útil para “limpiar” la pantalla).
4. Bonus Cursos Gratuitos Recomendados (Actualizado 2026)
Se que este pequeño resumen es muy corto y deje muchas cosas por fuera pero si buscas una estructura formal sin pagar, estos son los mejores a mi parecer recuerda que la practica hace al maestro empieza por los que necesites dia a dia y ve incoporando herramientas a tu set de habilidades:
- Introduction to Linux (EdX - Linux Foundation): El curso oficial para empezar con bases sólidas.
- Linux Journey: Mi favorito personal. Es una web gratuita, organizada por niveles (Grasshopper, Journeyman, Master) y muy práctica.
- Cisco Networking Academy (NDG Linux Unhatched): Un curso corto y gratuito de 8 horas muy bien estructurado.
- OverTheWire (Bandit): No es un curso, es un juego. Tienes que ir “hackeando” niveles usando comandos de la terminal. Es la forma más divertida y adictiva de aprender.