TREE(1) TREE(1)
NAME
tree - list contents of directories in(1,8) a tree-like format.
SYNOPSIS
tree [-adfgilnopqrstuxACDFNS] [-L level [-R]] [-H baseHREF] [-T title]
[-o filename] [--nolinks] [-P pattern] [-I pattern] [--inodes]
[--device] [--noreport] [--dirsfirst] [--version] [--help] [directory
...]
DESCRIPTION
Tree is a recursive directory listing program that produces a depth
indented listing of files, which is colorized ala dircolors if(3,n) the
LS_COLORS environment variable is set(7,n,1 builtins) and output is to tty. With no
arguments, tree lists the files in(1,8) the current directory. When direc-
tory arguments are given, tree lists all the files and/or directories
found in(1,8) the given directories each in(1,8) turn. Upon completion of list-
ing all files/directories found, tree returns the total number of files
and/or directories listed.
By default, when a symbolic link(1,2) is encountered, the path that the sym-
bolic link(1,2) refers to is printed after the name of the link(1,2) in(1,8) the for-
mat:
name -> real-path
If the `-l' option is given and the symbolic link(1,2) refers to an actual
directory, then tree will follow the path of the symbolic link(1,2) as if(3,n) it
were a real directory.
OPTIONS
Tree understands the following command line switches:
--help Outputs a verbose usage listing.
--version
Outputs the version(1,3,5) of tree.
-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(1,n) 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(1,8)
conjunction with the -f option.
-l Follows symbolic links if(3,n) they point to directories, as if(3,n) they
were directories. Symbolic links that will result in(1,8) recursion
are avoided when detected.
-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 begin-
ning 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 single character not listed in(1,8) brackets) and `|'
separates alternate patterns.
-I pattern
Do not list those files that match the wild-card pattern.
--noreport
Omits printing of the file(1,n) and directory report at the end of
the tree listing.
-p Print the protections for each file(1,n) (as per ls -l).
-s Print the size of each file(1,n) along with the name.
-u Print the username, or UID # if(3,n) no username is available, of the
file.
-g Print the group name, or GID # if(3,n) no group name is available, of
the file.
-D Print the date of the last modification time(1,2,n) for the file(1,n)
listed.
--inodes
Prints the inode number of the file(1,n) or directory
--device
Prints the device number to which the file(1,n) or directory belongs
-F Append a `/' for directories, a `=' for socket(2,7,n) files, a `*' for
executable files and a `|' for FIFO's, as per ls -F
-q Print non-printable characters in(1,8) filenames as question marks
instead of the default carrot notation.
-N Print non-printable characters as is instead of the default car-
rot notation.
-r Sort the output in(1,8) reverse alphabetic order.
-t Sort the output by last modification time(1,2,n) instead of alphabeti-
cally.
--dirsfirst
List directories before files.
-n Turn colorization off always, over-ridden by the -C option.
-C Turn colorization on always, using built-in color defaults if(3,n)
the LS_COLORS environment variable is not set. Useful to col-
orize output to a pipe.
-A Turn on ANSI line graphics hack when printing the indentation
lines.
-S Turn on ASCII line graphics (useful when using linux console(4,n)
mode fonts). This option is now equivalent to `--charset=IBM437'
and will eventually be depreciated.
-L level
Max display depth of the directory tree.
-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.
-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.organiza-
tion.domain/pub' (baseHREF should be `ftp://hostname.organiza-
tion.domain'). Hint: don't use ANSI lines with this option, and
don't give more than one directory in(1,8) the directory list. If you
wish to use colors via CCS stylesheet, use the -C option in(1,8)
addition to this option to force color output.
-T title
Sets the title and H1 header string(3,n) in(1,8) HTML output mode.
--charset charset
Set the character set(7,n,1 builtins) to use when outputting HTML and for line
drawing.
--nolinks
Turns off hyperlinks in(1,8) HTML output.
-o filename
Send output to filename.
FILES
/etc/DIR_COLORS System color database.
~/.dircolors Users color database.
ENVIRONMENT
LS_COLORS Color information created by dircolors
TREE_CHARSET Character set(7,n,1 builtins) for tree to use in(1,8) HTML mode.
LC_CTYPE Locale for filename output.
AUTHOR
Steve Baker (ice@mama.indstate.edu)
HTML output hacked by Francesc Rocher (rocher@econ.udg.es)
Charsets and OS/2 support by Kyosuke Tokoro (NBG01720@nifty.ne.jp)
BUGS
Tree does not prune "empty" directories when the -P and -I options are
used. Tree prints directories as it comes to them, so cannot accumu-
late information on files and directories beneath the directory it is
printing. Probably more.
SEE ALSO
dircolors(1L), ls(1L), find(1L)
Tree 1.5.0 TREE(1)