Tree: Unterschied zwischen den Versionen

Aus Foxwiki
K Textersetzung - „== Syntax ==“ durch „== Aufruf ==“
 
(84 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
'''tree''' listed den Inhalt von Verzeichnissen als Baum auf
'''tree''' - Verzeichnisinhalt als Baum auflisten


= Beschreibung =
== Beschreibung ==
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.
; Farbige Anzeige eines Verzeichnisbaums mit Einrückungen
* With no arguments, tree lists the files in the current directory.
* Rekursive Anzeige von Verzeichnissen
* When directory arguments are given, tree lists all the files and/or directories found in the given directories each in turn.
* erzeugt eine Dateiliste mit Einrückungen
* Upon completion of listing all files/directories found, tree returns the total number of files and/or directories listed.


By default, when a symbolic link is encountered, the path that the symbolic link refers to is printed after the name of the link in the format:
; Farbgebung
name -> real-path
* Die Farbgebung der Liste folgt den Konventionen des Befehls »dircolors«
* wenn die Umgebungsvariable LS_COLORS gesetzt ist und die Ausgabe auf der Konsole erfolgt


If the `-l' option is given and the symbolic link refers to an actual directory, then tree will follow the path of the symbolic link as if it were a real directory.
== Beschreibung ==
; 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


= Installation =
; Symbolischer Link
  # '''apt install tree'''
* 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


= Syntax =
; tmp
tree [-acdfghilnpqrstuvxACDFJQNSUX] [-L level [-R]] [-H baseHREF] [-T title] [-o filename] [-P pattern] [-I pattern] [--gitignore] [--matchdirs] [--metafirst] [--ignore-case] [--nolinks] [--inodes] [--device] [--sort[=]name] [--dirsfirst] [--filesfirst] [--filelimit #] [--si] [--du] [--prune] [--timefmt[=]format] [--fromfile] [--info] [--noreport] [--version] [--help] [--] [directory ...]
find -printf "%TY-%Tm-%Td %TT %p\n" | sort -n


= Syntax =
== Parameter ==


== Optionen ==
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
=== LISTING OPTIONS ===
-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).


-d List directories only.
* 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


-l Follows symbolic links if they point to directories, as if they were directories.
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:
* Symbolic links that will result in recursion are avoided when detected.
name -> real-path


-f Prints the full path prefix for each file.
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


-x Stay on the current file-system only.
== Installation ==
* Ala find -xdev.
# '''apt install tree'''
 
== Aufruf ==
-L level || Max display depth of the directory tree.
  $ '''tree [Optionen] [Verzeichnis ...]'''
 
-R Recursively cross down the tree each level directories (see -L option), and at each of them execute tree again adding `-o 00Tree.html' as a new option.
 
-P pattern || List only those files that match the wild-card pattern.
* You may have multiple -P options.
* Note: you must use the -a option to also consider those files beginning with a dot `.' for matching.
* Valid wildcard operators are `*' (any zero or more characters), `**` (any zero or more characters as well as null /'s, i.e. /**/ may match a single /), `?' (any single character), `[...]' (any single character listed between brackets (optional - (dash) for character range may be used: ex: [A-Z]), and `[^...]' (any single character not listed in brackets) and `|' separates alternate patterns.
* A '/' at the end of the pattern matches directories, but not files.
 
-I pattern
Do not list those files that match the wild-card pattern.
* You may have multiple -I options.
* See -P above for information on wildcard patterns.
 
--gitignore
Uses git .gitignore files for filtering files and directories.
* Also uses $GIT_DIR/info/exclude if present.
 
--ignore-case
If a match pattern is specified by the -P or -I option, this will cause the pattern to match without regards to the case of each letter.
 
--matchdirs
If a match pattern is specified by the -P option, this will cause the pattern to be applied to directory names (in addition to filenames).
* In the event of a match on the directory name, matching is disabled for the directory's contents.
* If the --prune op‐
tion is used, empty folders that match the pattern will not be pruned.
 
--metafirst
Print the meta-data information at the beginning of the line rather than after the indentation lines.
 
--prune
Makes tree prune empty directories from the output, useful when used in conjunction with -P or -I.
* See BUGS AND NOTES below for more information on this option.
 
--info Prints file comments found in .info files.
* See .INFO FILES below for more information on the format of .info files.
 
--noreport Omits printing of the file and directory report at the end of the tree listing.
 
--charset charset Set the character set to use when outputting HTML and for line drawing.
 
--filelimit # Do not descend directories that contain more than # entries.
 
--timefmt format Prints (implies -D) and formats the date according to the format string which uses the strftime(3) syntax.
 
-o filename Send output to filename.
 
=== FILE OPTIONS ===
-q Print non-printable characters in filenames as question marks instead of the default.
 
-N Print non-printable characters as is instead of as escaped octal numbers.
 
-Q Quote the names of files in double quotes.
 
-p Print the file type and permissions for each file (as per ls -l).
 
-u Print the username, or UID # if no username is available, of the file.
 
-g Print the group name, or GID # if no group name is available, of the file.
 
-s Print the size of each file in bytes along with the name.
 
-h Print the size of each file but in a more human readable way, e.g.
* appending a size letter for kilobytes (K), megabytes (M), gigabytes (G), terabytes (T), petabytes (P) and exabytes (E).
 
--si Like -h but use SI units (powers of 1000) instead.
 
--du For each directory report its size as the accumulation of sizes of all its files and sub-directories (and their files, and so on).
* The total amount of used space is also given in the final report (like the 'du -c' command.) This option requires tree to read the entire directory tree before emitting it, see BUGS AND NOTES below.
* Implies -s.
 
-D Print the date of the last modification time or if -c is used, the last status change time for the file listed.
 
-F Append a `/' for directories, a `=' for socket files, a `*' for executable files, a `>' for doors (Solaris) and a `|' for FIFO's, as per ls -F
 
--inodes Prints the inode number of the file or directory
 
--device Prints the device number to which the file or directory belongs
 
=== SORTING OPTIONS ===
-v Sort the output by version.
 
-t Sort the output by last modification time instead of alphabetically.
 
-c Sort the output by last status change instead of alphabetically.
* Modifies the -D option (if used) to print the last status change instead of modification time.
 
-U Do not sort.
* Lists files in directory order.
* Disables --dirsfirst.
 
-r Sort the output in reverse order.
* This is a meta-sort that alter the above sorts.
* This option is disabled when -U is used.
 
--dirsfirst List directories before files.
* This is a meta-sort that alters the above sorts.
* This option is disabled when -U is used.
 
--filesfirst List files before directories.
* This is a meta-sort that alters the above sorts.
* This option is disabled when -U is used.
 
--sort[=]type Sort the output by type instead of name.
* Possible values are: ctime (-c), mtime (-t), size, or version (-v).
 
=== GRAPHICS OPTIONS ===
-i Makes tree not print the indentation lines, useful when used in conjunction with the -f option. Also removes as much whitespace as possible when used with the -J or -x options.
 
-A Turn on ANSI line graphics hack when printing the indentation lines.
 
-S Turn on CP437 line graphics (useful when using Linux console mode fonts). This option is now equivalent to `--charset=IBM437' and may eventually be depreciated.
 
-n Turn colorization off always, over-ridden by the -C option, however overrides CLICOLOR_FORCE if present.
 
-C Turn colorization on always, using built-in color defaults if the LS_COLORS or TREE_COLORS environment variables are not set. Useful to colorize output to a pipe.
 
=== XML/JSON/HTML OPTIONS ===
-X Turn on XML output.
* Outputs the directory tree as an XML formatted file.
 
-J Turn on JSON output.  
* Outputs the directory tree as a JSON formatted array.
 
-H baseHREF ||  Turn on HTML output, including HTTP references.
* Useful for ftp sites.
* baseHREF gives the base ftp location when using HTML output.
* That is, the local directory may be `/local/ftp/pub', but it must be referenced as ftp://hostname.organization.domain/pub' (baseHREF should be `ftp://hostname.organization.domain').
* Hint: don't use ANSI lines with this option, and don't give more than one directory in the directory list.
* If you
wish to use colors via CSS style-sheet, use the -C option in addition to this option to  force color output.
 
-T title
Sets the title and H1 header string in HTML output mode.
 
--nolinks
Turns off hyperlinks in HTML output.


=== INPUT OPTIONS ===
=== Optionen ===
--fromfile Reads a directory listing from a file rather than the file-system.
==== LISTING OPTIONS ====
* Paths provided
{| class="wikitable sortable options"
on the command line are files to read from rather than directories to search.  
|-
* The dot (.) di‐
! Option !! Beschreibung
rectory indicates that tree should read paths from standard input.  
|-
* NOTE: this is only suitable
| -a || Alle Dateien werden gedruckt
for reading the output of a program such as find, not 'tree -fi' as symlinks cannot (at least
* Standardmäßig druckt tree keine versteckten Dateien (die mit einem Punkt `.' beginnen)
as yet) be distinguished from files that simply contain ' -> ' as part of the filename.
* In keinem Fall druckt tree die Dateisystemkonstrukte `.' (aktuelles Verzeichnis) und `..' (vorheriges Verzeichnis)
|-
| -d || Listet nur Verzeichnisse auf
|-
| -l || Folgt symbolischen Links, wenn sie auf Verzeichnisse zeigen, als ob sie Verzeichnisse wären
* Symbolische Links, die zu einer Rekursion führen, werden vermieden, wenn sie erkannt werden
|-
| -f || Gibt den vollständigen Pfadpräfix für jede Datei aus
|-
| -x || Bleibt nur auf dem aktuellen Dateisystem
* Ala find -xdev
|-
| -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
* Sie können mehrere -P Optionen haben
* Hinweis: Sie müssen die Option -a verwenden, um auch die Dateien zu berücksichtigen, die mit einem Punkt `.' beginnen
* Gültige Platzhalter sind `*' (null oder mehr Zeichen), `**` (null oder mehr Zeichen sowie Null /'s, d.h. /**/ kann mit einem einzelnen / übereinstimmen), `?' (ein einzelnes Zeichen), `[...]' (ein einzelnes Zeichen zwischen eckigen Klammern (optional kann ein - (Bindestrich) für einen Zeichenbereich verwendet werden: z. B.  [A-Z]), und `[^...]' (ein einzelnes Zeichen, das nicht in eckigen Klammern steht) und `|' trennt alternative Muster
* Ein '/' am Ende des Musters passt auf Verzeichnisse, aber nicht auf Dateien
|-
| -I-Muster || Die Dateien, die mit dem Platzhaltermuster übereinstimmen, werden nicht aufgelistet
* Sie können mehrere -I Optionen haben
* Siehe -P oben für Informationen zu Platzhaltermustern
|-
| --gitignore || Verwendet git .gitignore-Dateien zum Filtern von Dateien und Verzeichnissen
* Verwendet auch $GIT_DIR/info/exclude, falls vorhanden
|-
| --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
* Im Falle einer Übereinstimmung mit dem Verzeichnisnamen wird der Abgleich für den Inhalt des Verzeichnisses deaktiviert
* Wenn die Option --prune verwendet wird, werden leere Ordner, die mit dem Muster übereinstimmen, nicht ausgegrenzt
|-
| --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
* Siehe BUGS UND HINWEISE unten für weitere Informationen zu dieser Option
|-
| --info || Druckt Dateikommentare, die in .info-Dateien gefunden wurden
* Weitere Informationen über das Format von .info-Dateien finden Sie unter .INFO-DATEIEN weiter unten
|-
| --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
|}


=== MISC OPTIONS ===
==== FILE OPTIONS ====
--help || Outputs a verbose usage listing.
{| class="wikitable sortable 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. 
* Anhängen eines Größenbuchstabens für Kilobytes (K), Megabytes (M), Gigabytes (G), Terabytes (T), Petabytes (P) und Exabytes (E)
|-
| --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
* Diese Option erfordert, dass tree den gesamten Verzeichnisbaum liest, bevor er ihn ausgibt, siehe BUGS UND HINWEISE unten
* Impliziert -s
|-
| -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 || <nowiki>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 </nowiki>
|-
| --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
|}


--version || Outputs the version of tree.
==== SORTING OPTIONS ====
{| class="wikitable sortable 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
* Ändert die Option -D (falls verwendet), um die letzte Statusänderung anstelle der Änderungszeit zu drucken
|-
| -U || Nicht sortieren
* Listet die Dateien in Verzeichnisreihenfolge auf
* Deaktiviert --dirsfirst
|-
| -r || Sortiert die Ausgabe in umgekehrter Reihenfolge
* Dies ist eine Metasortierung, die die obigen Sortierungen verändert
* Diese Option ist deaktiviert, wenn -U verwendet wird
|-
| --dirsfirst || Listet Verzeichnisse vor Dateien auf
* Dies ist eine Metasortierung, die die obigen Sortierungen ändert
* Diese Option ist deaktiviert, wenn -U verwendet wird
|-
| --filesfirst || Listet Dateien vor Verzeichnissen auf
* Dies ist eine Meta-Sortierung, die die obigen Sortierungen ändert
* Diese Option ist deaktiviert, wenn -U verwendet wird
|-
| --sort[=]type || Sortiert die Ausgabe nach dem Typ statt nach dem Namen
* Mögliche Werte sind: ctime (-c), mtime (-t), size, oder version (-v)
|}


-- Option processing terminator. || No further options will be processed after this.
==== GRAPHICS OPTIONS ====
{| class="wikitable sortable 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
|}


.INFO FILES
==== XML/JSON/HTML OPTIONS ====
.info files are similiar to .gitignore files, if a .info file is found while scanning a directory it is read and added to a stack of .info information.
{| class="wikitable sortable options"
* Each file is composed of comments
|-
(lines starting with hash marks (#),) or wild-card patterns which may match a file relative to
! Option !! Beschreibung
the directory the .info file is found in.
|-
* If a file should match a pattern, the tab indented
| -X || Schaltet die XML-Ausgabe ein
comment that follows the pattern is used as the file comment.  
* Gibt den Verzeichnisbaum als XML-formatierte Datei aus
* A comment is terminated by a
|-
non-tab indented line.
| -J || Schaltet die JSON-Ausgabe ein
* Multiple patterns, each to a line, may share the same comment.
* Gibt den Verzeichnisbaum als JSON-formatiertes Array aus
|-
| -H baseHREF || Schaltet die HTML-Ausgabe ein, einschließlich HTTP-Referenzen
* Nützlich für ftp-Seiten
* baseHREF gibt den FTP-Basisort an, wenn HTML-Ausgabe verwendet wird
* Das heißt, das lokale Verzeichnis kann `/local/ftp/pub' sein, aber es muss als ftp://hostname.organization.domain/pub' referenziert werden (baseHREF sollte `ftp://hostname.organization.domain' sein)
* Tipp: Verwenden Sie keine ANSI-Zeilen mit dieser Option, und geben Sie nicht mehr als ein Verzeichnis in der Verzeichnisliste an
* Wenn Sie Farben per CSS-Stylesheet verwenden möchten, verwenden Sie die Option -C zusätzlich zu dieser Option, um die Farbausgabe zu erzwingen
|-
| -T Titel || Setzt den Titel und den H1-Header-String im HTML-Ausgabemodus
|-
| --nolinks|| Schaltet Hyperlinks in der HTML-Ausgabe aus
|}


ENVIRONMENT
==== INPUT OPTIONS ====
LS_COLORS Color information created by dircolors
{| class="wikitable sortable options"
TREE_COLORS Uses this for color information over LS_COLORS if it is set.
|-
TREE_CHARSET Character set for tree to use in HTML mode.
! Option !! Beschreibung
CLICOLOR Enables colorization even if TREE_COLORS or LS_COLORS is not set.
|-
CLICOLOR_FORCE Always enables colorization (effectively -C)
| --fromfile || Liest eine Verzeichnisliste aus einer Datei und nicht aus dem Dateisystem
LC_CTYPE Locale for filename output.
* Die in der Befehlszeile angegebenen Pfade auf der Befehlszeile angegebenen Pfade sind Dateien, aus denen gelesen wird, und keine Verzeichnisse, die durchsucht werden
LC_TIME Locale for timefmt output, see strftime(3).
* Der Punkt (.) directory zeigt an, dass tree die Pfade von der Standardeingabe lesen soll
TZ Timezone for timefmt output, see strftime(3).
* HINWEIS: dies ist nur geeignet für das Lesen der Ausgabe eines Programms wie find, nicht für 'tree -fi', da Symlinks (zumindest noch nicht von Dateien unterschieden werden können, die einfach ' -> ' als Teil des Dateinamens enthalten
STDDATA_FD Enable the stddata feature, optionally set descriptor to use.
|}


BUGS AND NOTES
==== MISC OPTIONS ====
Tree does not prune "empty" directories when the -P and -I options are used by default.
{| class="wikitable sortable options"
* Use
|-
the --prune option.
! 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
|}


The -h and --si options round to the nearest whole number unlike the ls implementations which
=== Parameter ===
rounds up always.
=== Umgebungsvariablen ===
{| class="wikitable sortable options"
|-
! 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
|}


Pruning files and directories with the -I, -P and --filelimit options will lead to incorrect
=== Exit-Status ===
file/directory count reports.


The --prune and --du options cause tree to accumulate the entire tree in memory before emit‐
== Anwendung ==
ting it.  
== Konfiguration ==
* For large directory trees this can cause a significant delay in output and the use of
=== Dateien ===
large amounts of memory.
{|class="wikitable sortable options"
|-
! 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
|}


The timefmt expansion buffer is limited to a ridiculously large 255 characters.
[[Kategorie:Linux/Befehl]]
* Output of
time strings longer than this will be undefined, but are guaranteed to not exceed 255 charac‐
ters.


XML/JSON trees are not colored, which is a bit of a shame.
{{DEFAULTSORT:tree}}


Probably more.
<noinclude>


As of version 2.0.0, in Linux, tree will attempt to automatically output a compact JSON tree on file descriptor 3 (what I call stddata,) if present and the environment variable STDDATA_FD is defined or set to a positive non-zero file descriptor value to use to output on. It is hoped that some day a better Linux/Unix shell may take advantage of this feature, though BSON would probably be a better format for this.
== Anhang ==
=== Siehe auch ===
{{Special:PrefixIndex/{{BASEPAGENAME}}}}
----
* [[dircolors]](1)
* [[ls]](1)
* [[find]](1)
* [[du]](1)


= Konfiguration =
==== Dokumentation ====
= Anwendungen =
===== Man-Page =====
= Links =
man 1 tree
== Dateien ==
* /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


== Man-Pages ==
===== Info-Pages =====
# dircolors(1)
info tree
# ls(1)
# find(1)
# du(1)
# strftime(3)
# gitignore(5)


== Intern ==
[[Kategorie:Linux/Dateisystem/Befehl]]
== Weblinks ==


=Kontrollfragen=
{{DISPLAYTITLE:tree}}
<div class="toccolours mw-collapsible mw-collapsed">
''Testfrage 1''
<div class="mw-collapsible-content">'''Antwort1'''</div>
</div>
<div class="toccolours mw-collapsible mw-collapsed">
''Testfrage 2''
<div class="mw-collapsible-content">'''Antwort2'''</div>
</div>
<div class="toccolours mw-collapsible mw-collapsed">
''Testfrage 3''
<div class="mw-collapsible-content">'''Antwort3'''</div>
</div>
<div class="toccolours mw-collapsible mw-collapsed">
''Testfrage 4''
<div class="mw-collapsible-content">'''Antwort4'''</div>
</div>
<div class="toccolours mw-collapsible mw-collapsed">
''Testfrage 5''
<div class="mw-collapsible-content">'''Antwort5'''</div>
</div>


[[Category:Linux:Dateisystem]]
</noinclude>

Aktuelle Version vom 12. November 2024, 19:41 Uhr

tree - Verzeichnisinhalt als Baum auflisten

Beschreibung

Farbige Anzeige eines Verzeichnisbaums mit Einrückungen
  • Rekursive Anzeige von Verzeichnissen
  • erzeugt eine Dateiliste mit Einrückungen
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

Beschreibung

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
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
tmp

find -printf "%TY-%Tm-%Td %TT %p\n" | sort -n


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

Installation

# apt install tree

Aufruf

$ tree [Optionen] [Verzeichnis ...]

Optionen

LISTING OPTIONS

Option Beschreibung
-a Alle Dateien werden gedruckt
  • Standardmäßig druckt tree keine versteckten Dateien (die mit einem Punkt `.' beginnen)
  • In keinem Fall druckt tree die Dateisystemkonstrukte `.' (aktuelles Verzeichnis) und `..' (vorheriges Verzeichnis)
-d Listet nur Verzeichnisse auf
-l Folgt symbolischen Links, wenn sie auf Verzeichnisse zeigen, als ob sie Verzeichnisse wären
  • Symbolische Links, die zu einer Rekursion führen, werden vermieden, wenn sie erkannt werden
-f Gibt den vollständigen Pfadpräfix für jede Datei aus
-x Bleibt nur auf dem aktuellen Dateisystem
  • Ala find -xdev
-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
  • Sie können mehrere -P Optionen haben
  • Hinweis: Sie müssen die Option -a verwenden, um auch die Dateien zu berücksichtigen, die mit einem Punkt `.' beginnen
  • Gültige Platzhalter sind `*' (null oder mehr Zeichen), `**` (null oder mehr Zeichen sowie Null /'s, d.h. /**/ kann mit einem einzelnen / übereinstimmen), `?' (ein einzelnes Zeichen), `[...]' (ein einzelnes Zeichen zwischen eckigen Klammern (optional kann ein - (Bindestrich) für einen Zeichenbereich verwendet werden: z. B.  [A-Z]), und `[^...]' (ein einzelnes Zeichen, das nicht in eckigen Klammern steht) und `|' trennt alternative Muster
  • Ein '/' am Ende des Musters passt auf Verzeichnisse, aber nicht auf Dateien
-I-Muster Die Dateien, die mit dem Platzhaltermuster übereinstimmen, werden nicht aufgelistet
  • Sie können mehrere -I Optionen haben
  • Siehe -P oben für Informationen zu Platzhaltermustern
--gitignore Verwendet git .gitignore-Dateien zum Filtern von Dateien und Verzeichnissen
  • Verwendet auch $GIT_DIR/info/exclude, falls vorhanden
--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
  • Im Falle einer Übereinstimmung mit dem Verzeichnisnamen wird der Abgleich für den Inhalt des Verzeichnisses deaktiviert
  • Wenn die Option --prune verwendet wird, werden leere Ordner, die mit dem Muster übereinstimmen, nicht ausgegrenzt
--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
  • Siehe BUGS UND HINWEISE unten für weitere Informationen zu dieser Option
--info Druckt Dateikommentare, die in .info-Dateien gefunden wurden
  • Weitere Informationen über das Format von .info-Dateien finden Sie unter .INFO-DATEIEN weiter unten
--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. 
  • Anhängen eines Größenbuchstabens für Kilobytes (K), Megabytes (M), Gigabytes (G), Terabytes (T), Petabytes (P) und Exabytes (E)
--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
  • Diese Option erfordert, dass tree den gesamten Verzeichnisbaum liest, bevor er ihn ausgibt, siehe BUGS UND HINWEISE unten
  • Impliziert -s
-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
  • Ändert die Option -D (falls verwendet), um die letzte Statusänderung anstelle der Änderungszeit zu drucken
-U Nicht sortieren
  • Listet die Dateien in Verzeichnisreihenfolge auf
  • Deaktiviert --dirsfirst
-r Sortiert die Ausgabe in umgekehrter Reihenfolge
  • Dies ist eine Metasortierung, die die obigen Sortierungen verändert
  • Diese Option ist deaktiviert, wenn -U verwendet wird
--dirsfirst Listet Verzeichnisse vor Dateien auf
  • Dies ist eine Metasortierung, die die obigen Sortierungen ändert
  • Diese Option ist deaktiviert, wenn -U verwendet wird
--filesfirst Listet Dateien vor Verzeichnissen auf
  • Dies ist eine Meta-Sortierung, die die obigen Sortierungen ändert
  • Diese Option ist deaktiviert, wenn -U verwendet wird
--sort[=]type Sortiert die Ausgabe nach dem Typ statt nach dem Namen
  • Mögliche Werte sind: ctime (-c), mtime (-t), size, oder version (-v)

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
  • Gibt den Verzeichnisbaum als XML-formatierte Datei aus
-J Schaltet die JSON-Ausgabe ein
  • Gibt den Verzeichnisbaum als JSON-formatiertes Array aus
-H baseHREF Schaltet die HTML-Ausgabe ein, einschließlich HTTP-Referenzen
  • Nützlich für ftp-Seiten
  • baseHREF gibt den FTP-Basisort an, wenn HTML-Ausgabe verwendet wird
  • Das heißt, das lokale Verzeichnis kann `/local/ftp/pub' sein, aber es muss als ftp://hostname.organization.domain/pub' referenziert werden (baseHREF sollte `ftp://hostname.organization.domain' sein)
  • Tipp: Verwenden Sie keine ANSI-Zeilen mit dieser Option, und geben Sie nicht mehr als ein Verzeichnis in der Verzeichnisliste an
  • Wenn Sie Farben per CSS-Stylesheet verwenden möchten, verwenden Sie die Option -C zusätzlich zu dieser Option, um die Farbausgabe zu erzwingen
-T Titel Setzt den Titel und den H1-Header-String im HTML-Ausgabemodus
--nolinks Schaltet Hyperlinks in der HTML-Ausgabe aus

INPUT OPTIONS

Option Beschreibung
--fromfile Liest eine Verzeichnisliste aus einer Datei und nicht aus dem Dateisystem
  • Die in der Befehlszeile angegebenen Pfade auf der Befehlszeile angegebenen Pfade sind Dateien, aus denen gelesen wird, und keine Verzeichnisse, die durchsucht werden
  • Der Punkt (.) directory zeigt an, dass tree die Pfade von der Standardeingabe lesen soll
  • HINWEIS: dies ist nur geeignet für das Lesen der Ausgabe eines Programms wie find, nicht für 'tree -fi', da Symlinks (zumindest noch nicht von Dateien unterschieden werden können, die einfach ' -> ' als Teil des Dateinamens enthalten

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

Parameter

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

Exit-Status

Anwendung

Konfiguration

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