Introducción
En el día a día de administradores y desarrolladores, conocer rápidamente la jerarquía de carpetas y archivos es esencial para navegar, depurar o documentar proyectos. El comando tree ofrece una vista visual en forma de árbol que muestra la estructura de directorios de manera clara y compacta, evitando la necesidad de ejecutar múltiples ls o find. En este artículo aprenderás qué es tree, cómo instalarlo, su sintaxis básica y ejemplos prácticos que podrás aplicar inmediatamente en tu terminal.
¿Qué es tree?
tree es una pequeña utilidad de línea de comandos que recorre recursivamente un directorio y genera una representación gráfica de su contenido usando caracteres como |, ─ y └. Cada nivel de profundidad se indica con sangría, lo que permite identificar rápidamente subcarpetas, archivos y sus permisos. Aunque no viene preinstalado en todas las distribuciones, su instalación es sencilla y su consumo de recursos es mínimo.
Instalación
En distribuciones basadas en Debian/Ubuntu, basta con ejecutar:
sudo apt update && sudo apt install tree
En Fedora o CentOS/RHEL se usa:
sudo dnf install tree # Fedora
sudo yum install tree # CentOS/RHEL
En Arch Linux y derivados:
sudo pacman -S tree
Tras la instalación, el comando está disponible globalmente y se puede invocar simplemente escribiendo tree en la terminal.
Sintaxis básica
La forma más simple es:
tree [opciones] [directorio]
Si no se especifica un directorio, tree trabaja sobre el directorio actual (.). Algunas opciones frecuentes son:
-a: muestra todos los archivos, incluidos los ocultos (que empiezan con.).-d: lista solo directorios, ignorando archivos.-L nivel: limita la profundidad de recorrido al número indicado.-p: muestra los permisos de cada archivo.-h: indica el tamaño de los archivos en formato legible (KB, MB, etc.).--dirsfirst: lista primero los directorios y luego los archivos.
Ejemplos comunes
1. Ver la estructura completa del proyecto actual:
tree
2. Limitar la profundidad a dos niveles:
tree -L 2
3. Mostrar solo directorios, útil para un vistazo rápido de la jerarquía:
tree -d4. Incluir tamaños y permisos:
tree -ph5. Excluir ciertos patrones (por ejemplo, directorios
node_modules):
tree -I 'node_modules|*.log'6. Guardar la salida en un archivo para documentación:
tree -a > estructura.txtOpciones avanzadas y trucos
Para usuarios que requieren más control,
treepermite combinar varias opciones y usar expresiones regulares en los filtros de exclusión/inclusión. Por ejemplo, para mostrar únicamente archivos con extensión.pyy sus directorios padres:
tree -P '*.py'Si deseas colores en la salida (dependiendo de la capacidad de tu terminal), agrega
--charseto asegúrate de que la variableTERMsoporte colores; muchas distribuciones ya lo habilitan por defecto.En scripts, puedes combinar
treecongrepoawkpara extraer información específica, como contar cuántos archivos de un tipo existen:
tree -fi | grep '\.txt$' | wc -lAquí,
-fmuestra la ruta completa de cada entrada y-ielimina las líneas de sangría, dejando una lista plana fácil de procesar.Conclusión
El comando
treees una herramienta ligera pero poderosa que mejora la productividad al ofrecer una visión instantánea de la estructura de archivos y directorios. Su instalación es trivial en la mayoría de las distribuciones Linux y sus opciones permiten adaptar la salida a casi cualquier necesidad, desde una simple vista de carpetas hasta informes detallados con permisos y tamaños. Incorporatreeen tu flujo de trabajo diario y notarás cuánto tiempo ahorras al evitar comandos repetitivos delsyfind.


