Navegación por el sistema de archivos (RSA-02)
En este apartado te enseño a moverte por el sistema de archivos.
Aprenderás a cambiar de directorio, conocer tu ubicación actual, listar contenidos y entender cómo están organizados los datos en tu máquina.
Comando: pwd
Sintaxis Básica
Muestra el directorio actual en el que estás trabajando.
Ejemplos:
$ pwd
$ cd /var/log
$ pwd
$ echo "Estoy en: $(pwd)" >> ruta_actual.txt
Sintaxis Avanzada
Se usa en scripts para validar rutas, registrar ubicaciones o ejecutar acciones condicionales según el directorio.
Ejemplos:
$ if [[ "$(pwd)" == "/home/luisgulo" ]]; then echo "Estás en tu carpeta personal"; fi
$ ruta=$(pwd); tar -czf backup.tar.gz "$ruta"
$ pwd | tee /tmp/ubicacion.log
Comando: ls
Sintaxis Básica
Lista los archivos y directorios contenidos en la ubicación actual.
Ejemplos:
$ ls
$ ls -l
$ ls -a
Sintaxis Avanzada
Permite ordenar, filtrar y mostrar información detallada de archivos según parámetros específicos.
Ejemplos:
$ ls -lhS # Lista por tamaño, con formato legible
$ ls -R /etc # Lista recursivamente todos los directorios desde /etc
$ ls --group-directories-first -l # Muestra carpetas primero en listado largo
Comando: cd
Sintaxis Básica
Cambia al directorio especificado.
Ejemplos:
$ cd /home/luisgulo
$ cd ..
$ cd ~
Sintaxis Avanzada
Se usa para automatizar navegación, validar existencia de rutas o usar en scripts iterativos.
Ejemplos:
$ cd "$(dirname /var/log/syslog)"
$ for dir in /etc/*/; do cd "$dir"; echo "Dentro de $dir"; done
$ cd /tmp || { echo "No se pudo acceder a /tmp"; exit 1; }
Comando: tree
Sintaxis Básica
Muestra la estructura de directorios en forma de árbol.
Ejemplos:
$ tree
$ tree /etc
$ tree -L 2 # Limita el nivel de profundidad
Sintaxis Avanzada
Permite visualizar grandes jerarquías, exportar estructuras o filtrar tipos de archivos.
Ejemplos:
$ tree -d /home/luisgulo > estructura_carpetas.txt
$ tree -P "*.sh" /scripts # Muestra solo archivos `.sh`
$ tree -a -I "node_modules|.git" # Excluye carpetas específicas
Comando: stat
Sintaxis Básica
Muestra información detallada de un archivo o carpeta, como fecha de modificación o tamaño.
Ejemplos:
$ stat documento.txt
$ stat /etc/passwd
$ stat -c "%s bytes" imagen.png
Sintaxis Avanzada
Se usa para extraer metadatos precisos en scripts o controlar condiciones basadas en propiedades de archivos.
Ejemplos:
$ if [[ $(stat -c "%s" archivo.log) -gt 1000000 ]]; then echo "Archivo muy grande"; fi
$ stat -c "Última modificación: %y" /var/log/syslog >> loginfo.txt
$ find . -type f -exec stat -c "%n %s" {} \; | sort -k2 -n