Primeros pasos con la línea de comandos de Linux
Una entrada de glosario práctico que cubre los conceptos básicos del shell de Linux: navegación, operaciones de archivos, permisos y los hábitos que te hacen rápido en esto.
La línea de comandos es una interfaz de texto para comunicarte directamente con el sistema operativo. En lugar de hacer clic en iconos, escribes instrucciones a un shell, y el shell las ejecuta. En la mayoría de distribuciones de Linux ese shell es bash, aunque zsh se ha vuelto común también, especialmente desde que es el predeterminado en macOS y cada vez más popular en configuraciones de Linux. Aprender la línea de comandos no se trata de memorizar cientos de comandos. Se trata de internalizar un pequeño conjunto de herramientas y combinarlas bien.
Qué hace realmente el shell
Cuando abres una terminal, estás ejecutando un emulador de terminal, y dentro de él un proceso shell está esperando entrada. Escribes un comando, presionas enter, y el shell lo analiza, encuentra el programa que nombraste, y lo ejecuta con los argumentos que le diste. La salida viene de vuelta como texto. Ese es el bucle completo. Entender esta separación entre terminal (la ventana) y shell (el programa interpretando tu texto) aclara mucha confusión temprana.
Moverse y ver cosas
Cuatro comandos cubren la mayoría de navegación temprana:
pwd # print working directory
ls -la # list files, including hidden ones, with details
cd projects # change into a directory
cd .. # go up one level
ls -la vale la pena escribir completamente al principio en lugar de depender de alias, así te acostumbras a ver permisos, propiedad y tamaños de archivo en la salida. El d o - inicial en la cadena de permisos te dice si algo es un directorio o un archivo regular, lo que confunde a muchos principiantes temprano.
Leer y manipular archivos
cat somefile.txt vuelca un archivo completo a la pantalla. Para cualquier cosa más larga, less somefile.txt te deja desplazarte y buscar con /pattern. head -n 20 file.log y tail -n 20 file.log muestran las primeras o últimas líneas, y tail -f file.log sigue un archivo mientras se añaden líneas nuevas, que es cómo ves un log en tiempo real durante la depuración.
Copiar, mover y eliminar usan cp, mv y rm:
cp report.txt report.bak
mv report.bak archive/
rm archive/report.bak
rm no mueve las cosas a una papelera. Las elimina. Agregar -i hace que pida confirmación, que es un hábito razonable mientras todavía estás desarrollando memoria muscular.
Permisos, sin el misterio
Ejecutar ls -l en un archivo muestra algo como -rwxr-xr--. Divídelo en tres grupos de tres: propietario, grupo, otros. Cada grupo tiene lectura, escritura, ejecución. chmod 755 script.sh establece el propietario en lectura/escritura/ejecución (7), y grupo/otros en lectura/ejecución (5). chmod +x script.sh es un atajo para hacer un archivo ejecutable sin recalcular el número completo. chown cambia quién posee un archivo, y normalmente necesita sudo a menos que ya sea tu archivo.
Tuberías y redirección
Esto es donde la línea de comandos deja de ser un navegador de archivos y comienza a ser una herramienta real. La tubería | envía la salida de un comando a otro:
ps aux | grep nginx
ls -la | wc -l
cat access.log | grep 404 | sort | uniq -c | sort -rn
Esa última cuenta cuántas veces aparece cada línea que genera 404 en un log y ordena por frecuencia, construida enteramente a partir de pequeños comandos encadenados. Redirección con > y >> envía salida a un archivo en lugar de la pantalla: > sobrescribe, >> añade. 2> redirige la salida de error específicamente, que importa una vez que comienzas a escribir scripts que necesitan separar salida normal de errores.
Encontrar cosas
find busca por nombre, tipo o tiempo de modificación:
find /var/log -nameEscrito con asistencia de IA, revisado y publicado por Michal Pilch (CISSP), Korra Studio.
Esta es una nota de la base de conocimiento de Korra Studio — la plataforma combina cada tema con mentoría 1 a 1.
Empezar gratisarrow_forward