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[=]#] [--si]
[--du] [--prune] [--charset[=]X]
[--timefmt[=]format] [--fromfile]
[--fromtabfile] [--fflinks] [--info]
[--infofile[=]fichier] [--noreport]
[--hyperlink] [--scheme[=]schéma]
[--authority[=]nom_hôte] [--opt-toggle]
[--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ée à 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 arguments, 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 accepte les options de ligne de commande
suivantes :
- -a
- 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 modèles du système de fichiers
« . » (répertoire en cours) et
« .. » (répertoire
précédent).
- -d
- Lister uniquement les répertoires.
- -l
- 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 éludés
s’ils sont détectés.
- -f
- Afficher le préfixe du chemin entier pour chaque fichier.
- -x
- Rester exclusivement sur le système de fichiers actuel. À la
manière de find -xdev.
- -L niveau
- Maximum de profondeur d'affichage de l'arborescence des
répertoires.
- -R
- 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).
- -P motif
- 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 plusieurs caractères quelconques), ** (aucun ou plusieurs
caractères quelconques aussi bien qu’aucun
« / », c'est à dire /**/ peut
correspondre à un seul /), ? (tout caractère
unique), [...] (tout caractère unique listé entre les
crochets, facultativement un tiret - pour une plage de
caractères, par exemple, [A-Z]) et [^...] (tout
caractère unique non listé entre les crochets), |
sépare les motifs successifs. Un / à la fin du motif
correspond à des répertoires, mais pas à des
fichiers.
- -I motif
- 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.
- --gitignore
- Utiliser les fichiers .gitignore de git pour filtrer les fichiers
et répertoires. Utiliser aussi $GIT_DIR/info/exclude si
présent.
- --gitfile[=]fichier
- Utiliser fichier explicitement comme un fichier gitignore.
- --ignore-case
- Si un motif de correspondance est indiqué par l'option -P ou
-I, cela fera correspondre le motif en ignorant la casse
(différence capitale/minuscule) de chaque lettre.
- --matchdirs
- Si un motif de correspondance est indiqué par l'option -P,
cela fera appliquer le motif aux noms de répertoire (en plus des
noms de fichier). 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.
- --metafirst
- Afficher les métadonnées au début de la ligne
plutôt qu'après les lignes d'indentation.
- --prune
- Enlever les répertoires vides de l'arbre dans la sortie. Cela est
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.
- --info
- Afficher les commentaires de fichier trouvés dans les fichiers
.info. Consulter ci-dessous FICHIERS .INFO pour plus
d'informations sur le format des fichiers .info.
- --infofile[=]fichier
- Utiliser fichier explicitement comme un fichier info.
- --noreport
- Ne pas afficher de rapport sur le fichier et le répertoire à
la fin de la liste de l'arbre.
- --charset[=]jeu_de_caractères
- Définir le jeu de caractères à utiliser pour les
sorties en HTML et pour dessiner une ligne.
- --filelimit[=]nombre
- Ne pas descendre dans les répertoires qui contiennent plus de
nombre entrées.
- --timefmt[=]format
- Afficher (implique -D) et formater la date selon la chaîne
de format utilisée par la syntaxe de strftime(3).
- -o
nom_fichier
- Diriger la sortie vers nom_fichier.
- -q
- 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.
- -N
- Afficher les caractères non imprimables tels quels plutôt
que sous forme de nombre octal protégé.
- -Q
- Noter les noms de fichier entre guillemets.
- -p
- Afficher le type de fichier et les permissions pour chaque fichier (comme
avec ls -l).
- -u
- Afficher le nom d'utilisateur, ou l'UID si aucun nom d’utilisateur
n'est disponible, du fichier.
- -g
- Afficher le nom du groupe, ou le GID si aucun nom de groupe n'est
disponible, auquel appartient le fichier.
- -s
- Afficher la taille de chaque fichier en octets avec son nom.
- -h
- 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.
- --si
- Comme -h mais utiliser des unités du Système
International (multiples de 1000).
- --du
- 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 (implique
-s).
- -D
- Afficher la date de la dernière heure de modification ou, si
-c est utilisé, la dernière heure de changement
d'état pour le fichier listé.
- -F
- Ajouter / pour les répertoires, = pour les fichiers
de socket, * pour les fichiers exécutables,
« > » pour les communications
interprocessus (Solaris) et « | » pour
les FIFO, comme avec ls -F
- --inodes
- Afficher le numéro d'inœud du fichier ou du
répertoire
- --device
- Afficher le numéro du périphérique auquel appartient
le fichier ou le répertoire
- -v
- Trier la sortie par version.
- -t
- Trier la sortie par date de dernière modification plutôt
qu'alphabétiquement.
- -c
- 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.
- -U
- Ne pas trier. Lister les fichiers dans l'ordre du répertoire.
Désactive --dirsfirst.
- -r
- 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é.
- --dirsfirst
- 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é.
- --filesfirst
- 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é.
- --sort[=]type
- Trier la sortie par type plutôt que par nom. Les valeurs
possibles sont : ctime (-c), mtime
(-t), size ou version (-v) ou none
(-U).
- -i
- Faire que tree n'affiche pas les lignes d'indentation. Cela est
utile lorsque utilisé en conjonction avec l'option -f. Cela
supprime également autant d'espaces blancs que possible lorsqu'elle
est utilisée avec les options -J ou -X.
- -A
- Activer l’expédient des lignes ANSI graphiques lors de
l'affichage des lignes d'indentation.
- -S
- 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 finalement être
obsolète.
- -n
- Toujours désactiver la colorisation. Cette option est
écrasée par l'option -C, mais écrase
CLICOLOR_FORCE si présente.
- -C
- 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).
- -X
- Activer la sortie XML. Afficher l'arborescence comme un fichier
formaté en XML.
- -J
- Activer la sortie en JSON. Afficher l'arborescence comme un tableau
formaté en JSON.
- -H
[-]baseHREF
- 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). Si baseHREF
commence par un tiret (-), le tiret est enlevé et cela
indique que l'arbre doit enlever le premier nom de répertoire de
l'URL href. 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.
- --hintro[=]fichier
- 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.
- --houtro[=]fichier
- 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.
- -T titre
- Définir le titre et la chaîne d'en-tête H1 dans le
mode de sortie HTML.
- --nolinks
- Désactiver les hyperliens dans la sortie HTML.
- --hyperlink
- Activer la prise en charge des hyperliens OSC 8 pour les terminaux
qui les gèrent. Voir BOGUES ET NOTES ci-dessous.
- --scheme[=]schéma
- Définir le schéma utilisé par les hyperliens
OSC 8. Le schéma par défaut est
« file:// ». Si le schéma omet
le deux-points (:), alors :// sera ajouté au
schéma.
- --authority[=]nom_hôte|autorité
- Définir l'autorité (nom d'hôte) à utiliser
pour les hyperliens OSC 8. Par défaut le nom d'hôte
local de la machine comme renvoyé par gethostname() est
utilisé comme autorité. Un point (.) ou un ensemble
de guillemets "", sans « = »
(c'est-à-dire une chaîne vide) peuvent être
utilisés pour indiquer une absence d’autorité.
- --fromfile
- 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.
- --fromtabfile
- 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.
- --fflinks
- 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.
- --opt-toggle
- Activer l'option « toggling ». Cela active la
capacité à activer ou désactiver des options telles
que -a, -h, etc. Très utile pour ajouter un
alias lorsque vous souhaitez désactiver des options activées
dans l'alias.
- --help
- Afficher une liste d'utilisation détaillée.
- --version
- 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 de Git
$GIT_DIR/info/exclude Liste globale d'exclusion de fichiers de Git
.info Fichier de commentaires de 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 (Steve.Baker.llc@gmail.com)
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émentations 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. L'utilitaire jq peut néanmoins coloriser le JSON, pas
simplement les noms de fichiers par type de fichier comme avec
LS_COLORS.
Les hyperliens OSC 8 peuvent ne pas être très
bien pris en charge par votre terminal. Pour ma version de Konsole, il est
nécessaire de définir le schéma à
« file: » (sans //) et de ne pas utiliser
d’autorité. Il peut être aussi nécessaire de
passer 3 ou 5 heures à trouver l'option pour activer les
hyperliens.
Probablement d’autres bogues.
À 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 positionné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.
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.