TREE(1) General Commands Manual TREE(1)
NAME
tree - list contents of directories in a tree-like format.
SYNOPSIS
tree [ -adfgilnpqstuxACDFN ] [ -P pattern ] [ -I pattern ] [ directory ... ]
DESCRIPTION
Tree is a recursive directory listing program that produces a depth indented listing of files. Color is supported ala dircolors if the
LS_COLORS environment variable is set, output is to a tty, and the -C flag is used. 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.
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:
name -> real-path
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.
OPTIONS
Tree understands the following command line switches:
-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.
-f Prints the full path prefix for each file.
-i Makes tree not print the indentation lines, useful when used in conjunction with the -f option.
-l Follows symbolic links if they point to directories, as if they were directories.
-x Stay on the current file-system only. Ala find -xdev.
-P pattern
List only those files that match the wild-card pattern. 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 single character), `[...]'
(any single character listed between brackets (optional - (dash) for character range may be used: ex: [A-Z]), and `[^...]' (any sin-
gle character not listed in brackets).
-I pattern
Do not list those files that match the wild-card pattern.
-p Print the protections for each file (as per ls -l).
-s Print the size of each file along with the name.
-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.
-D Print the date of the last modification time for the file listed.
-F Append a `/' for directories, a `=' for socket files, a `*' for executable files and a `|' for FIFO's, as per ls -F
-q Print non-printable characters in filenames as question marks instead of the default caret notation.
-N Print non-printable characters as is instead of the default caret notation.
-t Sort the output by last modification time instead of alphabetically.
-n Turn colorization off always, over-ridden by the -C option.
-C Turn colorization on always, unless the LS_COLORS environment variable is not set. Useful to colorize output to a pipe.
-A Turn on ANSI line graphics hack when printing the indentation lines.
FILES
/etc/DIR_COLORS System color database.
~/.dircolors Users color database.
ENVIRONMENT
LS_COLORS Color information created by dircolors
AUTHOR
Steve Baker (ice@mama.indstate.edu)
BUGS
None known. Not heavily tested. Needs a few more options, ala ls.
SEE ALSO
dircolors(1L), ls(1L)
UNIX Programmer's Manual TREE(1)