Tutoriel sur les commandes arborescentes de Linux pour les débutants (6 exemples)

Il ne serait pas faux de dire que lacommande lsest l’étalon-or lorsqu’il s’agit de lister le contenu des répertoires sur la ligne de commande Linux. Cependant, il existe des alternatives qui ont leurs propres points forts par rapport à ls. L’un de ces outils est Tree, dont nous allons discuter les bases dans ce tutoriel.

Mais avant cela, il est bon de mentionner que tous les exemples ici ont été testés sur une machine Ubuntu 18.04 LTS.

Commande Linux tree

Comme son nom l’indique, la commande tree de Linux répertorie le contenu des répertoires sous forme d’arbre. Voici sa syntaxe :

tree [OPTIONS] [directory]

Et voici comment la page de manuel de l’outil l’explique :

Tree is a recursive directory listing program that produces a depth indented listing of files, 
which is colorized ala dircolors if the LS_COLORS environment variable is set and output is to tty.
With no arguments, tree lists the files in the current  directory. When directory arguments are
given, tree lists all the files and/or directories found in the given directories each in turn.
Upon completion of listing all files/directories found, tree returns the total number of files
and/or directories listed.

Si la commande tree n’est pas installée sur ta boîte Ubuntu, tu peux la récupérer à l’aide de la commande suivante :

sudo apt-get install tree

Voici quelques exemples de style Q&R qui devraient te donner un bon exemple du fonctionnement de la commande tree.

Q1. Comment fonctionne la commande tree ?

L’utilisation de base est assez simple. Exécute simplement la commande ‘tree’ sans aucune option. Voici un exemple :

tree

Voici le résultat que cette commande a produit sur mon système :

Comment fonctionne la commande de l'arbre

Tu peux donc voir qu’une structure arborescente a été produite dans la sortie. Note que c’est le répertoire de travail actuel dont le contenu est affiché par défaut. Si tu veux afficher le contenu d’un autre répertoire, tu devras préciser le chemin d’accès à ce répertoire en entrée.

Q2. Comment faire pour que tree affiche aussi les fichiers cachés ?

Par défaut, la commande tree n’affiche pas les fichiers cachés. Cependant, si tu veux, tu peux faire en sorte que tree le fasse en utilisant l’option de ligne de commande -a.

tree -a

Voici ce que dit la page de manuel à propos de -a :

All files are printed. By default tree does not print hidden files (those beginning with a dot `.')
. In no event does tree print the file system constructs `.' (current directory) and `..'
(previous directory).

Q3. Comment faire pour que tree n’affiche que les répertoires en sortie ?

Suppose que tu souhaites que la commande tree n’affiche que les entrées de répertoire dans la sortie. Tu peux le faire en utilisant l’option de ligne de commande -d.

Par exemple, la commande suivante :

tree -d

produit cette sortie :

Comment faire pour que l'arbre n'affiche que les répertoires dans la sortie

Q4. Comment faire pour que la commande tree imprime le préfixe de chemin complet pour les fichiers ?

Tu peux le faire à l’aide de l’option de ligne de commande -f. Voici un exemple :

tree -f

Voici une partie de la sortie produite par cette commande sur mon système :

Comment faire en sorte que l'arbre imprime le préfixe de chemin complet pour les fichiers

Q5. Comment contrôler la profondeur de l’arbre de répertoire dans la sortie ?

La commande tree te permet également de contrôler la profondeur de l’arborescence des répertoires produite en sortie. Pour ce faire, tu peux utiliser l’option de ligne de commande -L qui requiert une valeur numérique indiquant la profondeur de répertoire autorisée. Par exemple :

tree -d -L 1

La commande ci-dessus permet de s’assurer que seul le premier niveau de répertoires est affiché dans la sortie.

Q6. Comment laisser sélectivement certains noms dans la sortie ?

La commande tree offre une option de ligne de commande -I qui te demande de passer un motif en entrée. En fonction des noms des fichiers/répertoires que tu veux ne pas afficher en sortie, crée un motif. Par exemple, je voulais afficher uniquement les répertoires, mais je ne voulais aucun nom avec le motif ‘Ubuntu’ (sensible à la casse), j’ai donc utilisé l’option de ligne de commande -I de la façon suivante :

tree -d -I *Ubuntu

Conclusion

Bien que nous ayons discuté de plusieurs options de ligne de commande d’arbre, le fait est que cet outil offre beaucoup plus de fonctionnalités. Une fois que tu auras mis en pratique tout ce dont nous avons parlé ici, rends-toi sur la page de manuel de la commande tree pour en savoir plus.

Vous aimerez aussi...