tree
tree - Farbige Anzeige eines Verzeichnisbaums mit Einrückungen
Beschreibung
Rekursive Anzeige von Verzeichnissen
- Dateiliste mit Einrückungen
Tree ist ein rekursives Programm zur Auflistung von Verzeichnissen
- das eine tief eingerückte Auflistung von Dateien erzeugt
- mit dircolors eingefärbt
- LS_COLORS: Umgebungsvariable LS_COLORS gesetzt ist und die Ausgabe auf tty erfolgt
Tree ist ein rekursives Programm zur Auflistung von Verzeichnissen, das eine tief eingerückte Auflistung von Dateien erzeugt, die ala dircolors eingefärbt ist, wenn die Umgebungsvariable LS_COLORS gesetzt ist und die Ausgabe auf tty erfolgt
- Wenn keine Argumente angegeben werden, listet tree die Dateien im aktuellen Verzeichnis auf
- Wenn Verzeichnisargumente angegeben werden, listet tree alle Dateien und/oder Verzeichnisse auf, die sich in den angegebenen Verzeichnissen befinden, jeweils der Reihe nach
- Wenn die Auflistung aller gefundenen Dateien/Verzeichnisse abgeschlossen ist, gibt tree die Gesamtzahl der aufgelisteten Dateien und/oder Verzeichnisse zurück
Wenn ein symbolischer Link gefunden wird, wird standardmäßig der Pfad, auf den der symbolische Link verweist, nach dem Namen des Links in dem Format ausgegeben:
name -> real-path
Wenn die Option `-l' angegeben wird und der symbolische Link auf ein tatsächliches Verzeichnis verweist, dann wird tree dem Pfad des symbolischen Links folgen, als ob es ein echtes Verzeichnis wäre
Aufruf
tree [Optionen] [Verzeichnis ...]
Anwendung
- Ohne Argument
Wenn keine Argumente angegeben werden, listet tree die Dateien im aktuellen Verzeichnis auf
- Verzeichnisargument
Wenn Verzeichnisargumente angegeben werden, listet tree alle Dateien und/oder Verzeichnisse auf, die sich in den angegebenen Verzeichnissen befinden, jeweils der Reihe nach
- Zusammenfassung
Wenn die Auflistung aller gefundenen Dateien/Verzeichnisse abgeschlossen ist, gibt tree die Gesamtzahl der aufgelisteten Dateien und/oder Verzeichnisse zurück
- Symbolischer Link
Wenn ein symbolischer Link gefunden wird, wird standardmäßig der Pfad, auf den der symbolische Link verweist, nach dem Namen des Links in dem Format ausgegeben:
name -> real-path
Wenn die Option `-l' angegeben wird und der symbolische Link auf ein tatsächliches Verzeichnis verweist, dann wird tree dem Pfad des symbolischen Links folgen, als ob es ein echtes Verzeichnis wäre
- Beispiel
find -printf "%TY-%Tm-%Td %TT %p\n" | sort -n
- tree
Zeigt den Inhalt des aktuellen Verzeichnisses und der Unterverzeichnisse in einer Baumstruktur an. Die Ausgabe erfolgt in grafischer Form, die dem folgenden Beispiel ähnelt:
. ├── config.dat ├── data │ ├── data1.bin │ ├── data2.sql │ └── data3.inf ├── images │ ├── background.jpg │ ├── icon.gif │ └── logo.jpg ├── program.exe └── readme.txt 2 directories, 9 files
- tree -I 'example*|bin|lib'
Zeigt einen Baum an, in dem nichts mit „example“ beginnt oder „bin“ oder „lib“ enthält, wie im Muster angegeben.
- tree -P 't*'
Mit einem großen „P“ können Sie Dateien mit einem Muster auflisten. Dieses Beispiel für ein Muster zeigt einen Baum an, der nur Verzeichnisse enthält, die mit „t“ beginnen, oder Verzeichnisse, die Dateien enthalten, die mit „t“ beginnen.
- tree -p
Mit einem kleinen „p“ können Sie einen Baum auflisten, der auch die Dateiberechtigungen anzeigt.
Optionen
- LISTING OPTIONS
Option | Beschreibung |
---|---|
-a | Alle Dateien werden gedruckt
|
-d | Listet nur Verzeichnisse auf |
-l | Folgt symbolischen Links, wenn sie auf Verzeichnisse zeigen, als ob sie Verzeichnisse wären
|
-f | Gibt den vollständigen Pfadpräfix für jede Datei aus |
-x | Bleibt nur auf dem aktuellen Dateisystem
|
-L level | Maximale Anzeigetiefe des Verzeichnisbaums |
-R | Rekursiv den Baum auf jeder Verzeichnisebene nach unten durchqueren (siehe Option -L), und bei jedem dieser Verzeichnisse erneut tree ausführen und `-o 00Tree.html' als neue Option hinzufügen |
-P pattern | Listet nur die Dateien auf, die dem Platzhaltermuster entsprechen
|
-I-Muster | Die Dateien, die mit dem Platzhaltermuster übereinstimmen, werden nicht aufgelistet
|
--gitignore | Verwendet git .gitignore-Dateien zum Filtern von Dateien und Verzeichnissen
|
--ignore-case | Wenn ein Übereinstimmungsmuster mit der Option -P oder -I angegeben wird, führt dies dazu, dass das Muster ohne Berücksichtigung der Groß- und Kleinschreibung der einzelnen Buchstaben übereinstimmt |
--matchdirs | Wenn ein Übereinstimmungsmuster mit der Option -P angegeben wird, wird das Muster auf Verzeichnisnamen (zusätzlich zu den Dateinamen) angewandt
|
--metafirst | Druckt die Metadaten am Anfang der Zeile und nicht nach den Einrückungszeilen |
--prune | Lässt tree leere Verzeichnisse aus der Ausgabe entfernen, nützlich in Verbindung mit -P oder -I
|
--info | Druckt Dateikommentare, die in .info-Dateien gefunden wurden
|
--noreport | Verzichtet auf den Ausdruck des Datei- und Verzeichnisberichts am Ende der Baumliste |
--charset charset | Legt den Zeichensatz fest, der bei der Ausgabe von HTML und beim Zeichnen von Linien verwendet wird |
--filelimit # | Verzeichnisse, die mehr als # Einträge enthalten, werden nicht angezeigt |
--timefmt format | Druckt (impliziert -D) und formatiert das Datum gemäß dem Formatstring, der die strftime(3)-Syntax verwendet |
-o filename | Ausgabe an filename senden |
- FILE OPTIONS
Option | Beschreibung |
---|---|
-q | Druckt nicht druckbare Zeichen in Dateinamen als Fragezeichen anstelle des Standardwerts |
-N | Druckt nicht druckbare Zeichen als Ist-Zeichen statt als escapte Oktalzahlen |
-Q | Die Namen von Dateien in Anführungszeichen setzen |
-p | Gibt den Dateityp und die Berechtigungen für jede Datei aus (wie bei ls -l) |
-u | Gibt den Benutzernamen oder die UID # der Datei aus, wenn kein Benutzername vorhanden ist |
-g | Gibt den Gruppennamen der Datei aus, oder GID # wenn kein Gruppenname verfügbar ist |
-s | Gibt die Größe jeder Datei in Bytes zusammen mit dem Namen aus |
-h | Gibt die Größe jeder Datei aus, aber in einer besser lesbaren Form, z. B.
|
--si | Wie -h, aber stattdessen werden SI-Einheiten (Potenzen von 1000) verwendet |
--du | Für jedes Verzeichnis wird seine Größe als die Summe der Größen aller Dateien und Unterverzeichnisse (und deren Dateien usw.) angegeben
|
-D | Gibt das Datum der letzten Änderung aus oder, wenn -c verwendet wird, die Zeit der letzten Statusänderung für die aufgelistete Datei |
-F | Hängt ein `/' für Verzeichnisse, ein `=' für Socket-Dateien, ein `*' für ausführbare Dateien, ein `>' für Türen (Solaris) und ein `|' für FIFOs an, wie bei ls -F |
--inodes | Druckt die Inode-Nummer der Datei oder des Verzeichnisses |
--device | Gibt die Gerätenummer aus, zu der die Datei oder das Verzeichnis gehört |
- SORTING OPTIONS
Option | Beschreibung |
---|---|
-v | Sortiert die Ausgabe nach Version |
-t | Sortiert die Ausgabe nach der letzten Änderungszeit statt alphabetisch |
-c | Sortiert die Ausgabe nach der letzten Statusänderung statt alphabetisch
|
-U | Nicht sortieren
|
-r | Sortiert die Ausgabe in umgekehrter Reihenfolge
|
--dirsfirst | Listet Verzeichnisse vor Dateien auf
|
--filesfirst | Listet Dateien vor Verzeichnissen auf
|
--sort[=]type | Sortiert die Ausgabe nach dem Typ statt nach dem Namen
|
- GRAPHICS OPTIONS
Option | Beschreibung |
---|---|
-i | sorgt dafür, dass tree die Einrückungslinien nicht ausgibt, was in Verbindung mit der Option -f nützlich ist. Entfernt auch so viel Leerzeichen wie möglich, wenn es mit den Optionen -J oder -x verwendet wird |
-A | Schaltet die ANSI-Zeilengrafik ein, wenn die Einrückungslinien gedruckt werden |
-S | Schaltet CP437-Zeilengrafiken ein (nützlich bei der Verwendung von Linux-Konsolenmodus-Schriften). Diese Option ist jetzt äquivalent zu `--charset=IBM437' und wird möglicherweise veraltet sein |
-n | Schaltet die Einfärbung immer aus, wird von der Option -C überschrieben, überschreibt jedoch CLICOLOR_FORCE, falls vorhanden |
-C | Schaltet die Einfärbung immer ein und verwendet eingebaute Farbvorgaben, wenn die Umgebungsvariablen LS_COLORS oder TREE_COLORS nicht gesetzt sind. Nützlich, um die Ausgabe in eine Pipe einzufärben |
- XML/JSON/HTML OPTIONS
Option | Beschreibung |
---|---|
-X | Schaltet die XML-Ausgabe ein
|
-J | Schaltet die JSON-Ausgabe ein
|
-H baseHREF | Schaltet die HTML-Ausgabe ein, einschließlich HTTP-Referenzen
|
-T Titel | Setzt den Titel und den H1-Header-String im HTML-Ausgabemodus |
--nolinks | Schaltet Hyperlinks in der HTML-Ausgabe aus |
- OPTIONS
Option | Beschreibung |
---|---|
--fromfile | Liest eine Verzeichnisliste aus einer Datei und nicht aus dem Dateisystem
|
- MISC OPTIONS
Option | Beschreibung |
---|---|
--help | Gibt eine ausführliche Nutzungsliste aus |
--version | Gibt die Version von tree aus |
-- | Terminator der Optionsverarbeitung. Danach werden keine weiteren Optionen verarbeitet |
Argumente
Exit-Status
Installation
sudo apt install tree
Paketinhalt
/usr/bin/tree /usr/share/doc/tree/README.gz /usr/share/doc/tree/TODO /usr/share/doc/tree/changelog.Debian.gz /usr/share/doc/tree/changelog.gz /usr/share/doc/tree/copyright /usr/share/man/man1/tree.1.gz
Konfiguration
Umgebungsvariablen
Variable | Beschreibung |
---|---|
LS_COLORS | Von dircolors erstellte Farbinformationen |
TREE_COLORS | Verwendet dies für Farbinformationen über LS_COLORS, wenn es gesetzt ist |
TREE_CHARSET | Zeichensatz für den Baum zur Verwendung im HTML-Modus |
CLICOLOR | Aktiviert die Einfärbung, auch wenn TREE_COLORS oder LS_COLORS nicht gesetzt ist |
CLICOLOR_FORCE | Aktiviert immer die Einfärbung (effektiv -C) |
LC_CTYPE | Gebietsschema für die Ausgabe von Dateinamen |
LC_TIME | Gebietsschema für die timefmt-Ausgabe, siehe strftime(3) |
TZ Zeitzone | für die timefmt-Ausgabe, siehe strftime(3) |
STDDATA_FD | Aktiviert die Funktion stddata, setzt optional den zu verwendenden Deskriptor |
Farbgebung
- Die Farbgebung der Liste folgt den Konventionen des Befehls »dircolors«
- wenn die Umgebungsvariable LS_COLORS gesetzt ist und die Ausgabe auf der Konsole erfolgt
Dateien
Option | Beschreibung |
---|---|
/etc/DIR_COLORS | System color database |
~/.dircolors | Users color database |
.gitignore | Git exclusion file |
$GIT_DIR/info/exclude | Global git file exclusion list |
.info | File comment file |
/usr/share/finfo/global_info | Global file comment file |
Anhang
Siehe auch
Dokumentation
Man-Page
man 1 tree
Info-Pages
info tree