How can I use the tree command to list current directory as a tree?
If I do
tree -L 1
It only lists the directories, how can I get it to show the files as well?
For Windows XP or 7, the
/F switch will also show filenames.
C:\>tree /? Graphically displays the folder structure of a drive or path. TREE [drive:][path] [/F] [/A] /F Display the names of the files in each folder. /A Use ASCII instead of extended characters.
However, I'm guessing you're on another OS since
/L is not a valid switch on XP or 7.
On my Ubuntu VM (11.10),
tree did not come pre-installed.
sudo apt-get install tree fixed that quickly. Afterwards
tree -L 1 worked just as you seem to want it to - it showed a tree of just the current directory, including files and directories. Adding the
-a switch also included "hidden" files. It seems the default behavior of
tree is to show both files and directories. This can be changed to directories only with the
More details can be found in
man tree or here: http://www.computerhope.com/unix/tree.htm
If you're having trouble, I suggest checking the
ls of your
pwd to make sure there actually are files in that directory. Also, check your file and folder permissions and view the
man page for
tree for more options.
It lists both files and directories for me:
[ben@ben-x220 ~/tmp/test]$ tree --version tree v1.5.3 (c) 1996 - 2009 by Steve Baker, Thomas Moore, Francesc Rocher, Kyosuke Tokoro [ben@ben-x220 ~/tmp/test]$ tree -L 1 . ├── dir1 ├── file1 ├── file2 └── file3 1 directory, 3 files [ben@ben-x220 ~/tmp/test]$ tree . ├── dir1 │ └── file4 ├── file1 ├── file2 └── file3 1 directory, 4 files