TREE(1) General Commands Manual TREE(1)

tree - Lister le contenu de répertoires sous forme d'arborescence.

tree [-acdfghilnpqrstuvxACDFJQNSUX] [-L niveau [-R]] [-H baseHREF] [-T titre] [-o nom_fichier] [-P motif] [-I motif] [--gitignore] [--gitfile[=]fichier] [--matchdirs] [--metafirst] [--ignore-case] [--nolinks] [--hintro[=fichier] [--houtro[=]fichier] [--inodes] [--device] [--sort[=]nom] [--dirsfirst] [--filesfirst] [--filelimit nombre] [--si] [--du] [--prune] [--charset[=]X] [timefmt[=]format] [--fromfile] [--fromtabfile] [--fflinks] [--info] [--infofile[=]fichier] [--noreport] [--version] [--help] [--] [répertoire ...]

tree est un programme de listage récursif de répertoires qui produit une liste de fichiers indentés en profondeur, coloré à la manière de dircolors si la variable d'environnement LS_COLORS est définie et que la sortie est sur une console tty. Sans arguments, tree liste les fichiers du répertoire en cours d'utilisation. Lorsque des répertoires sont donnés en argument, tree liste tous les fichiers et/ou répertoires trouvés dans les répertoires mentionnés chacun à leur tour. Après avoir affiché tous les fichiers et répertoires trouvés, tree renvoie le nombre total de fichiers et/ou de répertoires listés.

Par défaut, quand un lien symbolique est rencontré, le chemin auquel il renvoie est affiché après le nom du lien sous la forme suivante :


nom -> chemin-réel

Si l'option -l est donnée et que le lien symbolique renvoie à un répertoire existant, tree suivra le chemin du lien symbolique comme s'il s'agissait d'un répertoire réel.

tree comprend les commutateurs en ligne de commande suivants :

Tous les fichiers sont affichés. Par défaut, tree n'affiche pas les fichiers cachés (ceux commençant par un point  «. »). En aucun cas, tree n'affiche les constructeurs du système de fichiers « . » (répertoire courant) et « .. » (répertoire précédent).
Lister uniquement les répertoires.
Suivre les liens symboliques s'ils pointent sur des répertoires comme s'ils étaient des répertoires. Les liens symboliques qui entraîneraient une récursion sont évités, une fois détectés.
Afficher le préfixe du chemin entier pour chaque fichier.
Rester exclusivement sur le système de fichiers actuel. À la manière de find -xdev.
Maximum de profondeur d'affichage de l'arborescence des répertoires.
Descendre récursivement dans chaque niveau de répertoires de l'arbre (voir l'option -L) et renvoyer à chaque niveau un fichier nommé OOTree.html (à la manière de -o).
Ne lister que les fichiers qui correspondent au motif joker. Il peut y avoir plusieurs options -P. Note : vous devez utiliser l'option -a pour prendre aussi en compte les fichiers commençant avec un point « . » pour la correspondance. Les opérateurs jokers valables sont * (aucun ou tout caractère), ** (aucun ou tout caractère aussi bien que NULL, c'est à dire /**/ correspondra à un simple /), ? (tout caractère unique), [...] (tout caractère unique listé entre les crochets (un tiret facultatif - peut être utilisé pour une plage de caractères, par exemple : [A-Z])) et [^...] (tout caractère seul non listé entre les crochets), | sépare les motifs alternés. Un / à la fin du motif correspond à des répertoires, mais pas à des fichiers.
Ne pas lister les fichiers qui correspondent au motif joker. Il peut y avoir plusieurs options -I. Voir -P ci-dessus pour de l'information sur les motifs jokers.
Utiliser les fichiers .gitignore de git pour filtrer les fichiers et répertoires. Utilise aussi $GIT_DIR/info/exclude si présent.
Utiliser fichier explicitement comme un fichier gitignore.
Si un motif de correspondance est indiqué par l'option -P ou -I, cela fera correspondre le motif en ignorant la casse (différence majuscule/minuscule) de chaque lettre.
Si un motif de correspondance est indiqué par l'option -P, cela fera appliquer le motif aux noms de répertoires (en plus des noms de fichiers). Dans le cas d'une correspondance avec le nom de répertoire, la recherche de correspondance est désactivée pour le contenu du répertoire. Si l'option --prune est utilisée, les dossiers vides ne seront pas enlevés.
Afficher les métadonnées au début de la ligne plutôt qu'après les lignes d'indentation.
Enlever les répertoires vides de l'arbre dans la sortie, utile lorsque l'option est utilisée conjointement avec -P ou -I. Consulter NOTES ET BOGUES ci-dessous pour plus d'informations sur cette option.
Afficher les commentaires de fichier trouvés dans les fichiers .info. Consulter ci-dessous .INFO FILES pour plus d'informations sur le format des fichiers .info.
Utiliser fichier explicitement comme un fichier info.
Ne pas afficher de rapport sur le fichier et le répertoire à la fin de la liste de l'arbre.
Définir les caractères à utiliser pour les sorties en HTML et pour dessiner une ligne.
Ne pas descendre dans les répertoires qui contiennent plus de nombre entrées.
Afficher (nécessite -D) et formater la date selon la chaîne de format utilisée par la syntaxe strftime(3).
Diriger la sortie vers nom_fichier.

Afficher les caractères non affichables dans les noms de fichiers sous forme de points d'interrogation (?) plutôt que la notation par défaut.
Afficher les caractères non imprimables tels quels plutôt que sous forme de nombre octal protégé.
Noter les noms de fichiers entre guillemets.
Afficher le type de fichier et les permissions pour chaque fichier (comme avec ls -l).
Afficher le nom d'utilisateur, ou l'UID si aucun nom utilisateur n'est disponible, du fichier.
Afficher le nom du groupe, ou le GID si aucun nom de groupe n'est disponible, auquel appartient le fichier.
Afficher la taille de chaque fichier en octets avec son nom.
Afficher la taille de chaque fichier sous une forme plus humainement lisible, par exemple en ajoutant une lettre en fonction de la taille, K pour kilooctet, M mégaoctet, G gigaoctet, T téraoctet, P pétaoctet et E exaoctet.
Comme -h mais utilise des unités du Système International (multiples de 1000).
Afficher la taille pour chaque répertoire comme étant l'addition des tailles de ses fichiers et sous-répertoires (ainsi que leurs fichiers, etc). Le chiffre du total d'espace utilisé est aussi donné dans le rapport final (comme avec la commande du -c). Cette option nécessite que tree lise l'arborescence entière du répertoire avant de l'émettre, voir BOGUES ET NOTES ci dessous, nécessite -s.
Afficher la date de la dernière modification horaire ou, si -c est utilisé, le dernier horaire de changement d'état pour le fichier listé.
Ajouter / pour les répertoires, = pour les fichiers sockets, * pour les fichier d'exécutables, « > » pour les portes (Solaris) et « | » pour les FIFO, comme avec ls -F
Afficher le numéro d'inœud du fichier ou du répertoire
Afficher le numéro du périphérique auquel appartient le fichier ou le répertoire

Trier la sortie par version.
Trier la sortie par date de dernière modification plutôt qu'alphabétiquement.
Trier la sortie par le dernier changement d'état plutôt qu'alphabétiquement. Cela modifie l'option -D (si utilisée) pour afficher le dernier changement d'état au lieu de la date de modification.
Ne pas trier. Lister les fichiers dans l'ordre du répertoire. Désactive --dirsfirst.
Trier la sortie dans l'ordre inverse. Cela est un méta-triage qui altère les tris ci-dessus. Cette option est désactivée lorsque -U est utilisé.
Lister les répertoires avant les fichiers. Cela est un méta-triage qui altère les tris ci-dessus. Cette option est désactivée si -U est utilisé.
Lister les fichiers avant les répertoires. Cela est un méta-triage qui altère les tris cités ci-dessus. Cette option est désactivée lorsque -U est utilisé.
Trier la sortie par type plutôt que par nom. Les valeurs possibles sont : ctime (-c), mtime (-t), size ou version (-v).

Faire que tree n'affiche pas les lignes d'indentation, utile lorsqu'utilisé en conjonction avec l'option -f. Supprime également autant d'espaces blancs que possible lorsqu'il est utilisé avec les options -J ou -X.
Activer le hack des lignes ANSI graphiques lors de l'affichage des lignes d'indentation.
Activer le graphisme des lignes CP437 (utile pour utiliser les fontes du mode console de Linux). Cette option est l'équivalent actuel de --charset=IBM437 et peut éventuellement être obsolète.
Désactiver tout le temps la colorisation, cette option est écrasée par l'option -C, mais écrase CLICOLOR_FORCE si présente.
Activer tout le temps la colorisation en utilisant les couleurs internes par défaut si les variables d'environnement LS_COLORS ou TREE_COLORS ne sont pas définies. Utile pour colorer la sortie dans un tube (pipe).

Activer la sortie XML. Affiche l'arborescence comme un fichier formaté en XML.
Activer la sortie en JSON. Affiche l'arborescence comme un tableau formaté en JSON.
Activer la sortie HTML, en incluant des références HTTP. Utile pour les sites ftp. baseHREF donne l'emplacement ftp de base lorsqu'on utilise la sortie HTML. C'est-à-dire que le répertoire local peut être /local/ftp/pub, mais il doit être référencé comme ftp://hostname.organization.domain/pub (baseHREF doit être ftp://hostname.organization.domain). Conseil : n'utilisez pas les lignes ANSI avec cette option, et n'indiquez pas plus d'un répertoire dans la liste des répertoires. Si vous voulez utiliser des couleurs à l'aide d'une feuille de style CSS, utilisez l'option -C en plus de cette option pour forcer la sortie en couleurs.
Utiliser fichier comme introduction HTML à la place de celle par défaut. Utiliser un fichier vide ou /dev/null pour éliminer l'introduction complètement.
Utiliser fichier comme séquence finale HTML à la place de celle par défaut. Utiliser un fichier vide ou /dev/null pour éliminer cette séquence complètement.
Définir le titre et la chaîne d'en-tête H1 dans le mode de sortie HTML.
Désactiver les hyperliens dans la sortie HTML.

Lire une liste de répertoires depuis un fichier plutôt que depuis le système de fichiers. Les chemins fournis sur la ligne de commande sont des fichiers à lire plutôt que des répertoires à rechercher. Le répertoire point (.) indique à tree de lire les chemins depuis l'entrée standard. NOTE : cela ne convient que pour lire la sortie d'un programme comme find, pas tree -fi étant donné que les liens symboliques ne sont pas distingués des fichiers contenant juste « -> » dans une partie de leur nom de fichier à moins que l'option --fflinks ne soit utilisée.
Comme --fromfile, tree lit une hiérarchie de répertoires à partir d'un fichier où les fichiers sont indentés par une tabulation, dans un format de type arborescent pour indiquer le niveau d'imbrication du répertoire.
Traiter les informations sur un lien symbolique trouvées dans un fichier, comme dans la sortie de 'tree -fi --noreport'. Seule la première occurrence de la chaîne ' -> ' est utilisée pour indiquer la séparation le nom du fichier et le lien.

Afficher une liste d'utilisation détaillée.
Afficher la version de tree.
--
Fin du traitement d'options. Aucune autre option ne sera traitée après cela.

Les fichiers .info sont similaires aux fichiers .gitignore, si un fichier .info est trouvé lors du parcours d'un répertoire, il est lu et ajouté à une pile d'informations .info. Chaque fichier est composé de commentaires (lignes commençant par un dièse (#)), ou de motifs jokers qui peuvent correspondre à un fichier relatif au répertoire dans lequel est trouvé le fichier .info. Si un fichier doit correspondre à un motif, le commentaire indenté par une tabulation qui suit le motif est utilisé comme commentaire de fichier. Un commentaire se termine par une ligne non indentée. Plusieurs motifs, chacun sur une ligne peuvent partager le même commentaire.

/etc/DIR_COLORS Base de données des couleurs du système.
~/.dircolors Base de données des couleurs de l'utilisateur.
.gitignore Fichier d'exclusion Git
$GIT_DIR/info/exclude Liste globale d'exclusion de fichiers git
.info Fichier de commentaires du fichier
/usr/share/finfo/global_info Fichier global des commentaires de fichier

LS_COLORS Informations sur les couleurs créées par dircolors
TREE_COLORS Utiliser cela pour les informations sur les couleurs en plus de LS_COLORS si elle est définie.
TREE_CHARSET Jeu de caractères à utiliser en mode HTML pour l'arbre.
CLICOLOR Activer la coloration même si TREE_COLORS ou LS_COLORS ne sont pas définies.
CLICOLOR_FORCE Toujours activer la colorisation (en fait -C)
NO_COLOR Désactiver la colorisation (en fait -n) (consulter https://no-color.org/)
LC_CTYPE Paramètres régionaux pour la sortie du nom de fichier.
LC_TIME Paramètres régionaux pour la sortie de timefmt, consulter strftime(3).
TZ Fuseau horaire pour la sortie de timefmt, consulter strftime(3).
STDDATA_FD Activer la fonction stddata, optionnellement définir le descripteur à utiliser.

Steve Baker (ice@mama.indstate.edu)
Sortie HTML faite par Francesc Rocher (rocher@econ.udg.es)
Prise en charge de jeux de caractères et de OS/2 par Kyosuke Tokoro (NBG01720@nifty.ne.jp)

tree ne supprime pas les répertoires « vides » lorsque les options -P et -I sont utilisées par défaut. Utilisez l'option --prune.

Les options -h et --si arrondissent au nombre entier le plus proche alors que les implémentaions de ls l'arrondissent toujours à l'entier supérieur.

Supprimer des fichiers et répertoires avec les options -I, -P et --filelimit peut conduire à un rapport incorrect du nombre de fichiers et de répertoires.

Les options --prune et --du font que tree accumule l'arbre entier en mémoire avant de l'émettre. Pour de grandes arborescences, cela peut causer un délai non négligeable pour la sortie et l'utilisation d'une grande quantité de mémoire.

Le tampon d'expansion timefmt est ridiculement limité à un maximum de 255 caractères. La sortie de chaînes de temps plus longues que cela seront indéfinies, mais il est assuré qu'elles n'excèderont pas 255 caractères.

Les arbres XML et JSON ne sont pas colorés, ce qui est un peu dommage.

Probablement plus.

À partir de la version 2.0.0, dans Linux, tree essaiera de produire automatiquement un arbre JSON compact sur le descripteur de fichier 3 (appelé ici stddata), s'il est présent et que la variable d'environnement STDDATA_FD est définie ou posiotionnée à une valeur de descripteur de fichier positive non nulle à utiliser dans la sortie. Il est à espérer qu'un jour un meilleur interpréteur de commande Linux/Unix puisse utiliser cette fonctionnalité, même si BSON serait probablement un meilleur format pour cela.

dircolors(1), ls(1), find(1), du(1), strftime(3) gitignore(5)

La traduction française de cette page de manuel a été créée par Baptiste Mélès <baptiste.meles@ens.fr> et bubu <bubub@no-log.org>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.

Tree 2.1.1