Go to main content

man pages section 1: User Commands

Exit Print View

Updated: July 2017

tree (1)


tree - like format.


tree  [-adfghilnopqrstuvxACDFNS]  [-L  level  [-R]]  [-H  baseHREF] [-T
title] [-o filename] [--nolinks] [-P pattern] [-I  pattern]  [--inodes]
[--device] [--noreport] [--dirsfirst] [--version] [--help] [--filelimit
#] [directory ...]


TREE(1)                     General Commands Manual                    TREE(1)

       tree - list contents of directories in a tree-like format.

       tree  [-adfghilnopqrstuvxACDFNS]  [-L  level  [-R]]  [-H  baseHREF] [-T
       title] [-o filename] [--nolinks] [-P pattern] [-I  pattern]  [--inodes]
       [--device] [--noreport] [--dirsfirst] [--version] [--help] [--filelimit
       #] [directory ...]

       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.   With  no
       arguments,  tree lists the files in the current directory.  When direc-
       tory arguments are given, tree lists all the files  and/or  directories
       found  in the given directories each in 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 is encountered, the path that the sym-
       bolic link refers to is printed after the name of the link in the  for-

           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.

       Tree understands the following command line switches:

       --help Outputs a verbose usage listing.

              Outputs the version 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  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. Symbolic links that will result  in  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 brackets) and `|'
              separates alternate patterns.

       -I pattern
              Do not list those files that match the wild-card pattern.

              Omits printing of the file and directory report at  the  end  of
              the tree listing.

       -p     Print  the  file  type  and permissions for each file (as per ls

       -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), terrabytes (T), petabytes (P) and exabytes (E).

       -u     Print the username, or UID # if no username is available, of the

       -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

              Prints the inode number of the file or directory

              Prints the device number to which the file or directory belongs

       -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 car-
              rot notation.

       -v     Sort the output by version.

       -r     Sort the output in reverse alphabetic order.

       -t     Sort the output by last modification time instead of  alphabeti-

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

       -S     Turn on ASCII line graphics (useful  when  using  linux  console
              mode fonts). This option is now equivalent to `--charset=IBM437'
              and will eventually be depreciated.

       -L level
              Max display depth of the directory tree.

       --filelimit #
              Do not descend directories that contain more than # entries.

       -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 the directory list. If you
              wish  to  use  colors  via  CCS stylesheet, 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.

       --charset charset
              Set the character set to use when outputting HTML and  for  line

              Turns off hyperlinks in HTML output.

       -o filename
              Send output to filename.

       /etc/DIR_COLORS          System color database.
       ~/.dircolors             Users color database.

       LS_COLORS      Color information created by dircolors
       TREE_CHARSET   Character set for tree to use in HTML mode.
       LC_CTYPE       Locale for filename output.

       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)

       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

       The -h option rounds to the nearest whole number unlike the  ls  imple-
       mentation  of  -h  which  rounds up always.  The IEC standard names for
       powers of 2 cooresponding to metric powers of 10  (KiBi,  et  al.)  are

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

       Probably more.

       See attributes(5) for descriptions of the following attributes:

       |Availability   | file/tree        |
       |Stability      | Uncommited       |
       dircolors(1L), ls(1L), find(1L)

       This    software    was    built    from    source     available     at
       https://java.net/projects/solaris-userland.    The  original  community
       source       was        downloaded        from         http://mama.ind-

       Further information about this software can be found on the open source
       community website at http://mama.indstate.edu/users/ice/tree/.

Tree 1.5.3                                                             TREE(1)