Linux Tactic

Bash Tree Command: Organizing Directory Structures Efficiently

If you’re someone who frequently works with the command line, you know that navigating through directories and files can quickly become an arduous task. That’s where the Bash Tree Command comes in.

In this article, we will explore what the Bash Tree Command is, what separates it from the traditional “ls” command, and the advantages of using it. We will then dive into the installation steps for the Tree command, how to check its version, and how to get help for this command.

What is Bash Tree Command? The Bash Tree Command is a command-line utility that displays the directory structure in a tree-like format and illustrates all the subdirectories and files in a hierarchy.

Instead of displaying a list of files in the current folder, the tree command lists all the files and folders, along with the paths and the details of the files and folders.

Difference between ls and tree command

The “ls” command is the most commonly used command in Linux to retrieve a list of files in a directory. While the “ls” command provides a basic list of the files and directories, the tree command not only provides a comprehensive view of the entire folder structure, it also gives you a more detailed look at each file and directory.

Benefits of using Bash Tree Command

One of the key advantages of using the Tree command is its file hierarchy view. It helps you identify the exact location of the file, making it easy to navigate through directories and find specific files.

Secondly, the access permissions of files and directories are also displayed, making it easier to identify ownership and access control. Lastly, if you have a lot of hidden files in your directories, the Tree command shows them too.

Hidden files are not visible when you use the “ls” command.

Installation of Tree in Bash

To install the Tree command in Bash, follow these simple steps:

Step 1: Open the terminal and type “sudo apt-get update” to update the system packages. Step 2: Install the Tree command by typing “sudo apt-get install tree”.

Step 3: Once the installation is complete, type “tree” in the terminal window to view the directory structure in tree format.

Checking the version of the installed Tree command

To check the version of your Tree command, type “tree –version” in the terminal.

Getting help about the Tree command

The Tree command comes with a man page that can be accessed by typing “man tree” in the terminal. This will provide detailed information on how to use the various options and switches of the Tree command.


In conclusion, the Bash Tree Command is an invaluable tool for navigating through directories and finding specific files. While the “ls” command provides a basic list of the files and directories, the Tree command gives a more comprehensive view of the entire folder structure, along with the details of files and directories.

The installation of the Tree command is a straightforward process, and users can check the version and get help via the man page. By using the Bash Tree Command, users save time and increase productivity while accessing files and directories in a better-organized fashion.

3) Using the Tree Command in Bash

The Tree command is a powerful command-line utility that can display the entire directory hierarchy in a tree format. Here are some basic usage examples of the Tree command.

Basic usage of the Tree command

Assuming you have installed the Tree command (as per the installation instructions provided in the previous section), using the command is simple. All you need to do is open up a terminal and type “tree” to see the directory hierarchy of your current folder.

The Tree command displays the directories and files in a tree-like format, with each subdirectory having its own branch. The output provides detailed information, such as file size, access permissions, and paths.

Displaying the tree structure with the less command

The tree command provides a lot of information, and sometimes the output of the command can overwhelm you. To make it easier to navigate through the directory structure, you can use the “less” command alongside the “tree” command.

The “less” command lets you scroll through the output one page at a time, so you can take your time to read the output of the “tree” command more efficiently. To do this, type “tree | less” in the terminal.

The “|” symbol is called a pipeline, and it takes the output of the “tree” command and sends it to “less.” This allows you to navigate the output of the “tree” command more easily, as you can use standard less navigation commands like “Arrow Down” and “Arrow Up.”

Displaying process tree with Tree command

In a Unix-like operating system, a process tree is a representation of the hierarchy of processes that are currently running. The “ps” command can provide information on the running processes, but it does not show the process hierarchy.

To display the process hierarchy, you can use the Tree command in combination with the “proc” directory, which contains information on all processes running on the system. To do this, type “tree /proc -L 2” in the terminal.

This command will display the process hierarchy up to two levels deep. This way, you can see all the child processes for each parent process.

The “proc” directory stores information for each running process in the “proc/[pid]” directory, where [pid] is the process ID.

4) Using Tree Command with Different Options in Bash

By default, the Tree command displays all directories and files in the directory hierarchy. However, you can use different options with the Tree command to modify its behavior.

Here are some of the most commonly used Tree command options and their functions.

Using the -a option to show hidden files

When you use the Tree command, hidden files (files with a dot “.” prefix) are not displayed by default. However, the -a option enables the display of hidden files.

To use this option, type “tree -a” in the terminal.

Using the -f option to get the full path and filename

The -f option prints the full path and filename of each file and directory in the output. This can be useful when you need to copy or search for a specific file.

To display the full path, type “tree -f” in the terminal.

Using the -s option to print file sizes

The -s option prints the size of each file in the output. To display file sizes, type “tree -s” in the terminal.

This option is helpful when you need to know the exact file sizes of your directory structure.

Using the -d option to fetch subdirectories without filenames

The -d option will display only the subdirectories within a directory hierarchy. This can be useful if you want to quickly locate all subdirectories without seeing all the individual files in each directory.

To display only the subdirectories, type “tree -d” in the terminal.

Using the -L option to limit the depth

The -L option sets the maximum depth of the directory hierarchy. This can be useful when you have a particularly dense directory structure and want to limit the amount of output the Tree command produces.

A useful command to list all files and directories in the current folder and the first level subdirectories is “tree -L 2”. This command will display all files and directories in the current folder along with its direct subdirectories.


The Tree command is an incredibly powerful tool for navigating directory structures and viewing file information in a formatted manner. The command options help users control the output of the Tree command, providing detailed information in a useful way.

By using the Tree command in combination with less, you can view long directory structures page-wise, making it easier to navigate. Furthermore, using the Tree command in combination with proc directory provides a bird’s-eye view of the current process hierarchy.

In summary, the Bash Tree Command is a powerful tool that displays the directory hierarchy in a tree-like format. Its advantages over traditional commands such as ls include greater visibility into access permissions and hidden files.

Once installed, the Tree command can be used in different ways, such as displaying the process tree and modifying its output with different options. Using the Tree command can help users navigate directories more efficiently, manage and maintain their file structures better, and get a clear view of the running processes on their system.

Ultimately, mastering this command can lead to a more productive and organized workflow for individuals who rely on the command line interface.

Popular Posts