Visualización del árbol de directorios de Linux

LinuxBeginner
Practicar Ahora

Introducción

En este laboratorio, aprenderá cómo usar el comando tree en Linux. El comando tree es una herramienta poderosa que muestra las estructuras de directorios y archivos en un formato jerárquico similar a un árbol. Esta representación visual facilita la comprensión de la organización de archivos y directorios en su sistema.

El comando tree es especialmente útil para administradores de sistemas, desarrolladores y cualquier persona que necesite navegar por estructuras de directorios complejas. Al final de este laboratorio, podrá utilizar las características básicas y avanzadas del comando tree para visualizar eficazmente las estructuras de directorios.

Instalación y uso del comando básico tree

En este paso, instalará el comando tree y aprenderá su funcionalidad básica.

Instalación del comando tree

Primero, asegúrese de que el comando tree esté instalado en su sistema. En la terminal, ingrese:

if ! command -v tree &> /dev/null; then
  sudo apt-get update
  sudo apt-get install -y tree
fi

Esto verifica si tree ya está instalado. Si no lo está, actualiza las listas de paquetes y lo instala por usted.

Creación de una estructura de directorios de muestra

Antes de usar el comando tree, necesitamos una estructura de directorios para visualizar. Asegúrese de estar en el directorio de trabajo correcto:

cd ~/project

Ahora, creemos una estructura de directorios de muestra que represente archivos de registro organizados por mes:

mkdir -p ./logs/2023/{January,February,March}
touch ./logs/2023/January/log1.txt
touch ./logs/2023/February/log2.txt
touch ./logs/2023/March/log3.txt

Esta secuencia de comandos:

  • Crea un directorio principal llamado logs
  • Dentro de logs, crea un subdirectorio llamado 2023
  • Dentro de 2023, crea tres subdirectorios para cada mes
  • Crea un archivo de registro en el directorio de cada mes

Uso del comando básico tree

Ahora, ejecutemos el comando básico tree para ver nuestra estructura de archivos:

tree

Debería ver una salida similar a esta:

.
└── logs
    └── 2023
        ├── January
        │   └── log1.txt
        ├── February
        │   └── log2.txt
        └── March
            └── log3.txt

El comando tree muestra la estructura de directorios a partir del directorio actual (representado por el punto en la parte superior). La indentación y las líneas muestran la relación jerárquica entre directorios y archivos.

Limitando la profundidad del árbol de directorios

Cuando se trabaja con estructuras de directorios grandes, visualizar todo el árbol puede resultar abrumador. En este paso, aprenderá cómo limitar la profundidad del árbol de directorios mostrado.

Creación de una estructura de directorios más profunda

Creemos una estructura de directorios más compleja para demostrar mejor esta función:

mkdir -p ~/project/backups/2023/{January,February,March}/{week1,week2,week3}
touch ~/project/backups/2023/January/week1/data.bak

Esto crea:

  • Un directorio backups con una estructura similar a nuestros registros (logs)
  • Un nivel adicional para las semanas dentro de cada mes
  • Un archivo de copia de seguridad de muestra en la carpeta de la semana 1 de enero

Uso de la opción -L para limitar la profundidad

La opción -L le permite especificar cuántos niveles de profundidad debe mostrar el árbol. Limitémos nuestra vista a 3 niveles:

tree -L 3

Debería ver una salida similar a esta:

.
├── backups
│   └── 2023
│       ├── January
│       ├── February
│       └── March
└── logs
    └── 2023
        ├── January
        ├── February
        └── March

Tenga en cuenta que los directorios de las semanas y los archivos dentro de ellos no se muestran porque estarían en el nivel 4, y limitamos la visualización a 3 niveles.

Cambio del nivel de profundidad

Puede ajustar el número después de -L para mostrar más o menos niveles. Intentemos con una profundidad de 4:

tree -L 4

Ahora debería ver los directorios de las semanas, pero no los archivos dentro de ellos:

.
├── backups
│   └── 2023
│       ├── January
│       │   ├── week1
│       │   ├── week2
│       │   └── week3
│       ├── February
│       │   ├── week1
│       │   ├── week2
│       │   └── week3
│       └── March
│           ├── week1
│           ├── week2
│           └── week3
└── logs
    └── 2023
        ├── January
        │   └── log1.txt
        ├── February
        │   └── log2.txt
        └── March
            └── log3.txt

Poder controlar la profundidad del árbol es útil cuando solo necesita una visión general de alto nivel de una estructura de directorios compleja.

Mostrando solo directorios

A veces, puede que solo esté interesado en la estructura de directorios sin ver los archivos. En este paso, aprenderá cómo mostrar solo directorios utilizando el comando tree.

Uso de la opción -d

La opción -d le indica al comando tree que muestre solo directorios e ignore los archivos. Intentémoslo:

tree -d

Debería ver una salida similar a esta:

.
├── backups
│   └── 2023
│       ├── January
│       │   ├── week1
│       │   ├── week2
│       │   └── week3
│       ├── February
│       │   ├── week1
│       │   ├── week2
│       │   └── week3
│       └── March
│           ├── week1
│           ├── week2
│           └── week3
└── logs
    └── 2023
        ├── January
        ├── February
        └── March

Tenga en cuenta que ninguno de los archivos (como log1.txt o data.bak) se muestra en esta vista.

Combinación de opciones

Puede combinar múltiples opciones para personalizar aún más la salida. Por ejemplo, para mostrar solo directorios hasta una profundidad de 2 niveles:

tree -d -L 2

Esto mostrará:

.
├── backups
│   └── 2023
└── logs
    └── 2023

Adición del recuento de directorios

Para ver cuántos directorios hay en cada subárbol, puede agregar la bandera -a:

tree -d -a

En la parte inferior de la salida, verá un resumen que muestra el número de directorios:

X directories

Donde X es el número total de directorios.

Ver solo la estructura de directorios es especialmente útil cuando desea entender la organización de un proyecto sin distraerse con archivos individuales.

Resumen

En este laboratorio (lab), aprendiste cómo usar el comando tree en Linux para visualizar estructuras de directorios. Comenzaste con el uso básico, creando y viendo jerarquías de directorios simples. Luego, exploraste características más avanzadas, como limitar la profundidad de los directorios mostrados con la opción -L y mostrar solo directorios con la opción -d.

Estas habilidades te ayudarán a navegar y entender sistemas de archivos complejos de manera más eficiente. El comando tree es una herramienta valiosa para administradores de sistemas, desarrolladores y cualquier persona que trabaje con estructuras de archivos organizadas en entornos Linux. Al visualizar claramente las jerarquías de directorios, puedes administrar mejor tus archivos y solucionar problemas relacionados con los directorios.