Que hoy escriba sobre este comando, el cual no sabía de su existencia, se debe a la necesidad que tuve de mostrar todo el árbol de directorios en un .html. Gracias al comando tree pude obtener una vista más detallada sobre todo lo que tenía almacenado, lo cual me facilitaba una búsqueda más exacta y rápida.
Esta herramienta nos permite mostrar de manera gráfica y de forma estructurada la jerarquía de los directorios de nuestro sistema operativo, o de cualquier directorio.
Tree no viene instalada por defecto en la mayoría de las distribuciones Linux, pero si se encuentra en los repositorios oficiales. Vamos a instalar esta excelente herramienta.
sudo apt install tree # Debian y Ubuntu sudo pacman -S tree # Arch Linux sudo dnf install tree # AlmaLinux
Estas son algunas combinaciones más usadas:
tree # Muestra directorios y ficheros tree -d # Muestra sólo directorios tree -L X # Muestra hasta X directorios de profundidad tree -f # Muestra los archivos con su ruta tree -a # Muestra todos los archivos, incluidos los ocultos. tree -l # Sigue enlaces simbólicos si apuntan a directorios. tree -p # Mostrar el tipo de archivo y los permisos para cada archivo. tree -u # Mostrar el nombre de usuario. tree -g # Mostrar el nombre del grupo. tree / # Muestra un árbol de todo nuestro sistema tree -H . -o list.html # Exporta tu árbol de directorio a un archivo HTML
Existen muchos más, les recomiendo leer todas sus combinaciones en el man del comando.
Para mi necesidad usé la combinación -Hb pues lo que necesitaba era que me exportara un archivo .html y que solo tuviese los directorios de un HDD. A continuación les dejo el script que he utilizado.
#!/bin/bash ruta="/home/admin/audiovisuales/Videos/" cd $ruta touch tree.log Log=tree.log echo >$Log rm list.html echo " -> list.html Eliminado " >>$Log echo >>$Log echo " -> Comenzando la creación de list.html el `date +%d-%m-%Y-%Hh%Mm%Ss`..." >>$Log echo >>$Log tree -Hd http://audiovisuales.dyaz.pl/Videos/> list.html echo >>$Log echo " -> Creación finalizada del list.html el `date +%d-%m-%Y-%Hh%Mm%Ss`..." >>$Log echo >>$Log mail -s "list.html creado el `date +%d-%m-%Y-%Hh%Mm%Ss`" admin@website.dyaz.pl < $ruta/$Log rm -rf $ruta/$Log exit
Espero les pueda ser de ayuda como lo ha sido para mí. See you later!
Muy buena herramienta para el explorer