Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
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 ti-
       tle] [-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 in-
       dented  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 `
	      main/pub'	(baseHREF should  be  `
	      main').  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 (
       HTML output hacked by Francesc Rocher (
       Charsets	and OS/2 support by Kyosuke Tokoro (

       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.

       dircolors(1L), ls(1L), find(1L)

Tree 1.5.3							       TREE(1)


Want to link to this manual page? Use this URL:

home | help