Excellent Utilities: broot – next gen tree explorer and customizable launcher

In Operation

If you’ve used the tree command you’ll encounter the problem that it produces page after page of output. Of course you can pipe its output to more or less.

But there’s a better way of viewing and navigating large directories.

Here’s an image of broot in action. Instructions on how to navigate are set out in the bottom bar.


What does broot offer?

  • Provides a concise overview of a large directory.
  • Find a directory by typing a few letters and hit alt and enter to navigate to the desired location. This provides a very efficient and fast way to navigate to a directory.
  • Selects the most relevant file and helps you keep track of file hierarchy when searching.
  • Run common file operations like ls, cp, mv, mkdir without losing the view of the file hierarchy.
  • Open additional panels and perform file operations between elements in each panel. The software can display two panels which are useful for previewing files and copying/moving files between two locations, but you can add more panels if your terminal is wide enough.
  • Preview files such as images without losing track of the file hierarchy. Search with fuzzy patterns or regular expressions inside a text preview panel.
  • Apply a standard or personal command to a file. And apply commands to several files.
  • Clipboard functionality.
  • Disk usage functionality using the --sort-by-size flag.
  • Check git statuses. Use :gf to display the statuses of files (what are the new ones, the modified ones, etc.), the current branch name and the change statistics.
  • Tons of other flags and options as shown in the image below. Flags and options can be classically passed on launch but also written in the program’s configuration file.

broot - flags and options

Next page: Page 3 – Summary

Pages in this article:
Page 1 – Introduction / Installation
Page 2 – In Operation
Page 3 – Summary

Complete list of articles in this series:

Excellent Utilities
AbricotineMarkdown editor with inline preview functionality
AnanicyShell daemon created to manage processes’ IO and CPU priorities
brootNext gen tree explorer and customizable launcher
cheat.shCommunity driven unified cheat sheet
crocSecurely transfer files and folders from the command-line
DeskreenLive streaming your desktop to a web browser
dufDisk usage utility with more polished presentation than the classic df
exaA turbo-charged alternative to the venerable ls command
fdWonderful alternative to the venerable find
fkillKill processes quick and easy
fontpreviewQuickly search and preview fonts
LanguageToolStyle and grammar checker for 30+ languages
Liquid PromptAdaptive prompt for Bash & Zsh
lnavAdvanced log file viewer for the small-scale; great for troubleshooting
lsdLike exa, lsd is a turbo-charged alternative to ls
McFlyNavigate through your bash shell history
mdlessFormatted and highlighted view of Markdown files
OCRmyPDFAdd OCR text layer to scanned PDFs
PaperworkDesigned to simplify the management of your paperwork
PDF Mix ToolPerform common editing operations on PDF files
pecoSimple interactive filtering tool that's remarkably useful
ripgrepRecursively search directories for a regex pattern
scrcpyDisplay and control Android devices
tldrSimplified and community-driven man pages
tmuxA terminal multiplexer that offers a massive boost to your workflow
TuskAn unofficial Evernote client with bags of potential
UlauncherSublime application launcher
WatsonTrack the time spent on projects
Share this article

One comment

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.