
Table des matières
Le tree La commande est parfaite pour visualiser l’intégralité de votre structure de répertoires en un coup d’œil. Il affiche les dossiers et les fichiers dans une présentation claire et arborescente directement dans le terminal. Vous pouvez contrôler la profondeur, inclure des fichiers cachés et même enregistrer la sortie dans un fichier. Dans cet article, nous verrons en profondeur comment tirer le meilleur parti de la commande tree.
Note: ne confondez pas le tree commande avec pstree. La commande tree traite du répertoire de fichiers, tandis que pstree traite de la liste des processus en cours d’exécution.
Installation et syntaxe de base
Tree n’est pas installé par défaut sur toutes les distributions Linux, mais il est petit et rapide à ajouter. Il vous suffit d’utiliser le gestionnaire de packages de votre distribution. Par exemple, sur Debian/Ubuntu, utilisez ceci :
sudo apt install treePour ceux d’entre vous qui utilisent des systèmes Fedora, CentOS ou RHEL, vous souhaiterez utiliser :
sudo dnf install treeLes utilisateurs d’Arch Linux peuvent utiliser ceci :
sudo pacman -S treeUne fois installé, l’utilisation la plus simple est :
tree
Cela imprime l’arborescence du répertoire courant, affichant les fichiers et répertoires avec les lignes de connexion et un résumé final, comme le nombre de répertoires et de fichiers. Par défaut, il répertorie tout de manière récursive, affichant les fichiers et répertoires dans une vue hiérarchique.
De plus, vous pouvez utiliser des indicateurs spéciaux qui modifient la façon dont l’arborescence affiche sa sortie, comme contrôler la profondeur, afficher la taille des fichiers, etc. Vous pouvez également spécifier le chemin du dossier que vous souhaitez cartographier.
tree (options) (directory)Par défaut, l’arborescence code sa sortie par couleur pour la rendre encore plus facile à lire. Le bleu (ou le gras) représente les répertoires, le vert spécifie les fichiers exécutables (comme les scripts ou les programmes) et le blanc/par défaut représente les fichiers normaux, et ainsi de suite.
Vous pouvez également vérifier le contenu d’un répertoire spécifique. Par exemple, si vous êtes dans votre répertoire personnel et que vous souhaitez voir votre dossier Documents, tapez simplement :
tree ~/Documents
La sortie se répercutera sur votre écran, vous montrant la hiérarchie complète.
Contrôle de la profondeur du répertoire
Parfois, vous ne souhaitez pas une descente infinie dans des sous-dossiers. Peut-être que vous ne vous souciez que des deux niveaux supérieurs, ou que vous avez seulement besoin d’un aperçu clair au lieu de trop de profondeur. Pour obtenir un niveau spécifique, vous pouvez utiliser le -L (niveau) drapeau du tree commande. Par exemple, pour afficher seulement deux niveaux, vous pouvez utiliser ceci :
tree -L 2
Vous pouvez également le combiner avec d’autres drapeaux pour plus de puissance. Par exemple, vous pouvez combiner -L avec le -d option pour afficher uniquement les répertoires et ignorer les fichiers, mais jusqu’au troisième niveau ou profondeur :
tree -d -L 3Sans limites, cela peut aller à l’infini, ce qui est bien pour les petites configurations mais écrasant pour les grands répertoires.
Y compris les fichiers et dossiers cachés
Dans le monde Linux, tout fichier ou répertoire commençant par un point (.) est considéré comme masqué. Ceux-ci ne sont généralement pas destinés à un usage quotidien. Il s’agit souvent de fichiers de configuration ou de dossiers de métadonnées, comme « .bashrc », « .profile » ou le répertoire « .git » commun dans les référentiels Git. La commande tree par défaut masque ou ignore ces fichiers et dossiers cachés.
Cependant, vous pouvez les inclure avec le -a drapeau:
tree -aDésormais, vous obtenez tous les répertoires, y compris tous les fichiers de configuration cachés importants. Si vous souhaitez des fichiers cachés et un contrôle de la profondeur, utilisez ceci :
tree -a -L 2
Affichage des fichiers par modèles correspondants
Parfois, vous ne voulez pas tout voir ; vous recherchez quelque chose de spécifique. Peut-être que vous ne vous souciez que des fichiers Python ou que vous recherchez tous vos documents Markdown. Le -P L’option vous permet de spécifier un modèle à correspondre.
Par exemple, si vous souhaitez voir uniquement les fichiers Python, exécutez :
tree -P "*.py"Si vous recherchez tous vos fichiers texte, utilisez :
tree -P "*.txt"Vous pouvez également utiliser des caractères génériques et faire preuve de créativité avec vos modèles. Disons que vous devez rechercher tous les fichiers commençant par config ; tu peux faire ça avec :
tree -P "config*"Quand vous utilisez -Pl’arborescence affichera toujours la structure des répertoires, mais elle n’affichera que les fichiers qui correspondent à votre modèle. Les répertoires vides, ceux qui ne contiennent pas de fichiers correspondants, apparaîtront toujours dans la sortie. Si vous trouvez cet encombrement, vous pouvez utiliser le --prune option:
tree -P "*.py" --pruneCela supprime tous les répertoires vides de la sortie, vous offrant ainsi une vue plus claire qui affiche uniquement les chemins menant à vos fichiers cibles. Encore une chose : si vous souhaitez exclure les noms qui correspondent à un modèle, utilisez -I au lieu de -P.
Affichage des tailles de fichiers dans un format lisible par l’homme
Pour être honnête, pour moi, voir la taille des fichiers en octets n’est pas particulièrement utile. Lorsqu’un fichier fait 524 288 octets, je dois m’arrêter et faire des calculs mentaux pour comprendre que cela fait environ 512 Ko. Heureusement, le -h l’option résout ce problème à merveille. Il affiche la taille des fichiers dans un format lisible par l’homme, de la même manière que nous pensons réellement à la taille des fichiers. Par exemple:
tree -h
Désormais, au lieu de voir 524288, vous verrez 512K. Un fichier de 1 048 576 octets devient 1,0 Mo. Ceci est utile lorsque vous souhaitez savoir où est allé tout votre espace disque. Vous pouvez rapidement parcourir l’arborescence et repérer les fichiers suspects.
Voici une autre combinaison que j’utilise fréquemment :
tree -hL 2Cela me montre deux niveaux de profondeur, avec des tailles de fichiers lisibles par l’homme.
Combinaison d’un arbre avec d’autres commandes
Sous Linux, le véritable pouvoir ne réside pas dans une seule commande, mais dans la manière dont vous pouvez les combiner. Le tree La commande génère simplement du texte. Et nous pouvons le rediriger vers d’autres commandes et y effectuer diverses opérations. Le tuyau (|) prend la sortie de la commande de gauche et l’envoie en entrée à la commande de droite.
Disons que vous souhaitez exécuter une arborescence sur un gros répertoire, mais que vous ne voulez pas qu’elle passe devant votre écran pendant 30 secondes. Vous avez l’intention de pouvoir le parcourir, le rechercher et le lire à votre rythme. Vous pouvez le faire en combinant tree avec le less commande:
tree /usr/lib | lessExécutez ceci et votre écran se verrouillera sur la première page de la sortie de l’arborescence.

Vous pouvez maintenant utiliser le touches fléchées (Haut/Bas), barre d'espace descendre une page entière, / suivi d’un mot pour rechercher ce mot dans tout l’arbre, et q pour quitter et revenir à votre invite.
De plus, le -P Le drapeau est idéal pour les motifs simples, mais que se passe-t-il si vous en cherchez plus ? Que faire si vous souhaitez rechercher un fichier ou un répertoire contenant le mot admin dedans, insensible à la casse ? C’est un travail pour grepessayez de le combiner avec tree comme ça:
tree -a | grep -i "admin"Vous pouvez également trouver chaque ligne contenant la configuration dans l’arborescence en associant le wc commande avec le tree comme ça:
tree -a | wc -lCela donne un nombre approximatif de lignes.
Enregistrement ou exportation de la sortie de l’arborescence
Parfois, vous devez enregistrer cette arborescence pour plus tard. Peut-être que vous documentez un projet, créez un rapport ou souhaitez simplement conserver un instantané de la structure de vos répertoires avant d’apporter des modifications. L’ancienne façon la plus simple de procéder consiste à utiliser la redirection comme celle-ci :
tree > directory_structure.txtCela enregistre l’intégralité de la sortie de l’arborescence dans un fichier texte. Simple, efficace et vous pouvez l’ouvrir dans n’importe quel éditeur de texte.
Vous pouvez également créer une page HTML avec des liens cliquables et des sections réductibles en utilisant le module intégré -H option:
tree -H . > structure.htmlOuvrez-le dans un navigateur et vous obtenez une vue interactive de votre structure de répertoires.
À des fins de documentation, vous pouvez également enregistrer le résultat avec un formatage spécifique :
tree -L 3 -a --dirsfirst > project_docs.txtLe --dirsfirst L’option répertorie les répertoires avant les fichiers, ce qui rend la sortie encore plus organisée. C’est parfait pour les fichiers README ou la documentation du projet.
Enfin, vous pouvez également ajouter des fichiers existants si vous créez un document plus volumineux :
tree -L 2 >> documentation.txtCela ajoute la sortie de l’arborescence à la fin de votre fichier de documentation existant sans écraser ce qui existe déjà.
Pensées finales
C’est l’utilisation de base de la commande tree. Il offre de nombreuses autres options que vous pouvez explorer. Pour en savoir plus, tapez info tree dans le terminal ou consultez le manuel en ligne. Presse q pour quitter lorsque vous avez terminé. Vous pouvez également explorer d’autres commandes utiles comme ls, findet du pour gérer et visualiser vos fichiers de différentes manières.








