page =
url = https://dystroy.org/broot
broot
.gitignore files are properly dealt with to put unwanted files out of your way.
Find a directory then cd to it
to get back to the shell having cd to the selected directory
:q if you just want to quit (you can use
You may also search with a regular expression. To do this, add a / before the pattern.
And you have other types of searches , for example searching on file content (start with c/ ):
You may also apply logical operators or combine patterns, for example searching test in all files except json ones could be !/json$/&c/test and searching carg both in file names and file contents would be carg|c/carg .
type a verb. For example :e opens the file in your preferred editor (which may be a terminal one)
Most often, when not using broot, you move your files in the blind. You do a few ls before, then your manipulation, and maybe you check after.
If you like you may do it Norton Commander style by binding :copy_to_panel to
and :move_to_panel to
Just find the file you want to edit with a few keystrokes, type :e , then
Replace ls (and its clones):
If you want to display sizes , dates and permissions , do br -sdp which gets you this:
You may also toggle options with a few keystrokes while inside broot. For example hitting a space, a d then enter shows you the dates. Or a space, then h then enter and you see hidden files.
You may sort by launching broot with --sort-by-size or --sort-by-date . Or you may, inside broot, type a space, then sd , and
and you toggled the :sort_by_date mode.
When sorting, the whole content of directories is taken into account. So if you want to find on Monday morning the most recently modified files, launch br --sort-by-date ~ .
If you start broot with the --whale-spotting option (or its shortcut -w ), you get a mode tailored to "whale spotting" navigation, making it easy to determine what files or folders take space.
If you hit :fs , you can check the usage of all filesystems, so that you focus on cleaning the full ones.
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.
And if you want to see only the files which would be displayed by the git status command, do :gs . From there it's easy to edit, or diff, selected files.