Los Tres Comandos Esenciales
Para navegar eficientemente por el sistema de archivos Linux, necesitas dominar tres comandos fundamentales que trabajan juntos como un GPS digital para tu terminal.
ls
List: Muestra el contenido de directorios
Es como "ver" lo que hay en una carpeta
cd
Change Directory: Cambia de directorio
Es como "entrar" a una carpeta diferente
pwd
Print Working Directory: Muestra tu ubicación actual
Es como "¿dónde estoy?"
Comando pwd - ¿Dónde Estoy?
El comando pwd
(Print Working Directory) te dice exactamente dónde te encuentras en el sistema de archivos. Es lo primero que debes saber antes de navegar.
# Ver tu ubicación actual
$ pwd
/home/usuario
# Siempre muestra la ruta absoluta completa
$ cd /var/log
$ pwd
/var/log
# Útil en scripts para saber el directorio de trabajo
$ pwd > ubicacion_actual.txt
$ cat ubicacion_actual.txt
/var/log
Tip Profesional
Acostúmbrate a usar pwd
frecuentemente, especialmente cuando trabajas con rutas relativas o estás perdido en el sistema de archivos.
Comando ls - ¿Qué Hay Aquí?
El comando ls
es probablemente el comando más utilizado en Linux. Te permite ver el contenido de directorios con diferentes niveles de detalle.
Uso Básico
# Listar contenido del directorio actual
$ ls
Desktop Documents Downloads Music Pictures Videos
# Listar contenido de un directorio específico
$ ls /etc
passwd group hosts fstab crontab resolv.conf
# Listar con más información (formato largo)
$ ls -l
total 48
drwxr-xr-x 2 usuario grupo 4096 oct 15 10:30 Desktop
drwxr-xr-x 2 usuario grupo 4096 oct 15 10:25 Documents
drwxr-xr-x 2 usuario grupo 4096 oct 15 10:20 Downloads
-rw-r--r-- 1 usuario grupo 1024 oct 15 09:15 archivo.txt
Opciones Más Importantes
Opción | Descripción | Ejemplo |
---|---|---|
-l |
Formato largo (detallado) | ls -l |
-a |
Mostrar archivos ocultos | ls -a |
-h |
Tamaños legibles (con -l) | ls -lh |
-t |
Ordenar por fecha de modificación | ls -lt |
-r |
Orden inverso | ls -lr |
-S |
Ordenar por tamaño | ls -lS |
Ejemplos Prácticos
# Combinación más común: listado detallado con archivos ocultos
$ ls -la
total 96
drwxr-xr-x 15 usuario grupo 4096 oct 15 10:30 .
drwxr-xr-x 3 root root 4096 oct 10 08:20 ..
-rw------- 1 usuario grupo 2847 oct 15 10:25 .bash_history
-rw-r--r-- 1 usuario grupo 220 oct 10 08:20 .bash_logout
-rw-r--r-- 1 usuario grupo 3526 oct 10 08:20 .bashrc
drwxr-xr-x 2 usuario grupo 4096 oct 15 10:30 Desktop
# Ver tamaños de archivos en formato legible
$ ls -lh
total 48K
drwxr-xr-x 2 usuario grupo 4.0K oct 15 10:30 Desktop
drwxr-xr-x 2 usuario grupo 4.0K oct 15 10:25 Documents
-rw-r--r-- 1 usuario grupo 15M oct 15 09:15 video.mp4
-rw-r--r-- 1 usuario grupo 1.2K oct 15 09:10 texto.txt
# Mostrar solo directorios
$ ls -d */
Desktop/ Documents/ Downloads/ Music/ Pictures/ Videos/
# Listar archivos por fecha, más recientes primero
$ ls -lt
total 48
drwxr-xr-x 2 usuario grupo 4096 oct 15 10:30 Desktop
drwxr-xr-x 2 usuario grupo 4096 oct 15 10:25 Documents
drwxr-xr-x 2 usuario grupo 4096 oct 15 10:20 Downloads
# Encontrar archivos grandes
$ ls -lSh
total 48K
-rw-r--r-- 1 usuario grupo 15M oct 15 09:15 video.mp4
drwxr-xr-x 2 usuario grupo 4.0K oct 15 10:30 Desktop
drwxr-xr-x 2 usuario grupo 4.0K oct 15 10:25 Documents
Archivos Ocultos
En Linux, los archivos que comienzan con punto (.) están ocultos. Usa ls -a
para verlos. Muchos archivos de configuración están ocultos.
Comando cd - Moverse por el Sistema
El comando cd
(Change Directory) te permite moverte entre directorios. Es tu herramienta principal de navegación.
Navegación Básica
# Ir a un directorio específico (ruta absoluta)
$ pwd
/home/usuario
$ cd /etc
$ pwd
/etc
# Ir a un subdirectorio (ruta relativa)
$ cd /home/usuario
$ cd Documents
$ pwd
/home/usuario/Documents
# Volver al directorio anterior
$ cd -
/home/usuario
$ pwd
/home/usuario
# Ir al directorio padre (subir un nivel)
$ cd /home/usuario/Documents/proyectos
$ pwd
/home/usuario/Documents/proyectos
$ cd ..
$ pwd
/home/usuario/Documents
$ cd ../..
$ pwd
/home/usuario
Atajos Importantes
Comando | Descripción | Ejemplo |
---|---|---|
cd o cd ~ |
Ir al directorio home | cd |
cd - |
Volver al directorio anterior | cd - |
cd .. |
Subir un nivel (directorio padre) | cd .. |
cd ../.. |
Subir dos niveles | cd ../.. |
cd / |
Ir al directorio raíz | cd / |
Rutas Absolutas vs Relativas
# RUTAS ABSOLUTAS (comienzan con /)
$ cd /home/usuario/Documents/proyectos
$ pwd
/home/usuario/Documents/proyectos
# RUTAS RELATIVAS (sin / al inicio)
$ cd /home/usuario
$ pwd
/home/usuario
$ cd Documents/proyectos # relativa desde usuario
$ pwd
/home/usuario/Documents/proyectos
# Combinando .. con rutas relativas
$ cd /home/usuario/Documents/proyectos
$ cd ../../Desktop # subir 2 niveles y entrar a Desktop
$ pwd
/home/usuario/Desktop
# Usar ~ para referenciar el home
$ cd ~/Documents # equivale a /home/usuario/Documents
$ pwd
/home/usuario/Documents
Autocompletado con TAB
Presiona la tecla TAB mientras escribes un directorio para autocompletarlo. Si hay múltiples opciones, presiona TAB dos veces para ver las opciones disponibles.
Combinando los Comandos
Los tres comandos trabajan mejor juntos. Aquí tienes algunos patrones comunes que usarás constantemente.
# Patrón típico de navegación
$ pwd # ¿Dónde estoy?
/home/usuario
$ ls # ¿Qué hay aquí?
Desktop Documents Downloads Music Pictures Videos
$ cd Documents # Ir a Documents
$ pwd # Confirmar ubicación
/home/usuario/Documents
$ ls -la # Ver contenido detallado
total 20
drwxr-xr-x 3 usuario grupo 4096 oct 15 10:25 .
drwxr-xr-x 15 usuario grupo 4096 oct 15 10:30 ..
drwxr-xr-x 2 usuario grupo 4096 oct 15 10:25 proyectos
-rw-r--r-- 1 usuario grupo 1024 oct 15 10:20 notas.txt
# Explorar subdirectorios
$ cd proyectos
$ ls -l
total 8
drwxr-xr-x 2 usuario grupo 4096 oct 15 10:25 mi-web
drwxr-xr-x 2 usuario grupo 4096 oct 15 10:25 scripts
$ cd mi-web
$ pwd
/home/usuario/Documents/proyectos/mi-web
$ ls
index.html style.css images/
# Volver rápido al inicio
$ cd # o cd ~
$ pwd
/home/usuario
Técnicas Avanzadas
Wildcards con ls
# Listar archivos con patrones
$ ls *.txt # Todos los archivos .txt
archivo1.txt notas.txt readme.txt
$ ls *.{jpg,png} # Archivos jpg y png
imagen1.jpg foto.png banner.jpg
$ ls a* # Archivos que empiecen con 'a'
archivo1.txt app.py audio.mp3
$ ls *[0-9]* # Archivos que contengan números
archivo1.txt imagen2.jpg version3.zip
# Listar directorios que contengan cierta palabra
$ ls -d *pro* # Directorios con 'pro' en el nombre
proyectos/ programas/
Navegación Rápida
# Alternar entre dos directorios
$ cd /etc
$ cd /var/log
$ cd - # volver a /etc
/etc
$ cd - # volver a /var/log
/var/log
# Navegar múltiples niveles de una vez
$ cd ../../../ # subir 3 niveles
$ cd ~/Documents/proyectos/mi-web/images # ruta completa
# Usar variables de entorno
$ cd $HOME/Documents # $HOME es equivalente a ~
$ echo $PWD # Variable que contiene el directorio actual
/home/usuario/Documents
Listado Especializado
# Solo mostrar directorios
$ ls -d */
Desktop/ Documents/ Downloads/ Music/ Pictures/ Videos/
# Mostrar archivos recursivamente (todos los subdirectorios)
$ ls -R
.:
Documents Desktop Downloads
./Documents:
notas.txt proyectos
./Documents/proyectos:
mi-web scripts
# Contar archivos en un directorio
$ ls | wc -l
6
# Mostrar el archivo más reciente
$ ls -t | head -1
archivo_nuevo.txt
# Mostrar archivos ordenados por tamaño (grandes primero)
$ ls -lSh
total 1.5G
-rw-r--r-- 1 usuario grupo 1.2G oct 15 14:30 video_grande.mp4
-rw-r--r-- 1 usuario grupo 256M oct 15 13:15 backup.tar.gz
-rw-r--r-- 1 usuario grupo 15M oct 15 12:00 presentacion.pptx
drwxr-xr-x 2 usuario grupo 4.0K oct 15 10:30 Desktop
Consejo de Productividad
Crea aliases para comandos que uses frecuentemente:
# Agregar a tu ~/.bashrc
alias ll='ls -alF' # listado detallado
alias la='ls -A' # mostrar archivos ocultos
alias l='ls -CF' # formato compacto
alias ..='cd ..' # subir un nivel
alias ...='cd ../..' # subir dos niveles
Errores Comunes y Soluciones
Errores Típicos
- "No such file or directory" - Verifica la ruta con
ls
ypwd
- "Permission denied" - No tienes permisos para acceder al directorio
- Perdido en el sistema - Usa
pwd
ycd
para volver al home
# Error: directorio no existe
$ cd /home/usuario/inexistente
bash: cd: /home/usuario/inexistente: No such file or directory
# Solución: verificar qué existe
$ ls /home/usuario/
Documents Desktop Downloads Music Pictures Videos
# Error: permisos insuficientes
$ cd /root
bash: cd: /root: Permission denied
# Solución: usar sudo si es necesario (con cuidado)
$ sudo ls /root
archivo_root.txt .bashrc .profile
# Si te pierdes, siempre puedes volver al home
$ cd
$ pwd
/home/usuario
Ejercicio Práctico
Navegación Completa
Completa esta serie de ejercicios para dominar la navegación básica:
# Ejercicio 1: Exploración inicial
pwd # ¿Dónde estoy?
ls # ¿Qué hay aquí?
ls -la # Versión detallada con archivos ocultos
# Ejercicio 2: Navegación básica
cd Desktop # Ir a Desktop (si existe)
pwd # Confirmar ubicación
ls -l # Ver contenido
cd .. # Volver al directorio padre
pwd # Confirmar que subiste un nivel
# Ejercicio 3: Rutas absolutas y relativas
cd / # Ir a la raíz del sistema
ls # Ver directorios del sistema
cd home # Navegar relativamente
pwd # Confirmar ubicación
cd # Volver a tu home directamente
# Ejercicio 4: Exploración del sistema
ls /etc | head -10 # Ver primeros 10 archivos de configuración
ls -lh /usr/bin | head -5 # Ver algunos programas del sistema
cd /var/log # Ir a logs del sistema
ls -lt | head -5 # Ver logs más recientes
cd - # Volver al directorio anterior
# Ejercicio 5: Crear estructura para practicar
mkdir -p ~/practica/nivel1/nivel2/nivel3
cd ~/practica
pwd
ls -la
cd nivel1/nivel2
pwd
cd ../..
pwd
ls -R # Ver toda la estructura recursivamente
Objetivo del Ejercicio
Al completar estos ejercicios deberías poder:
- Saber siempre dónde estás con
pwd
- Listar contenido con diferentes opciones de
ls
- Navegar usando rutas absolutas y relativas
- Usar atajos como
cd -
,cd ..
, ycd ~