Alternatives to bfs
A breadth-first variant of the UNIX find command that stays compatible with common find versions. The listings below can replace it for an important use case. Each note says what changes if you switch.
The original
bfs
A breadth-first variant of the UNIX find command that stays compatible with common find versions.
Replacements
Listings that take over the same core job as bfs.
fd
Finds files by name without the argument soup that find requires, and it is much faster.
fd replaces find's syntax with short arguments, respects gitignore, runs in parallel and has Windows builds, but does not aim to cover all of find's features.
fselect
A command-line tool for finding files with a relaxed SQL-like query syntax.
fselect uses a SQL-like query syntax instead of find expressions and runs on Windows too, but is not a complete replacement for find.
plocate
A locate replacement that finds files by name in milliseconds using a trigram posting-list index.
plocate searches a prebuilt index for instant name lookups on Linux, so results are only as fresh as the last index update, unlike bfs's live traversal.
Similar software
Related functionality, not a direct replacement.
erdtree
A multi-threaded command-line tool that shows a directory tree together with disk usage.
tree
A command-line program that lists the contents of directories as an indented tree.
fzf
A fuzzy filter for any list: files, command history, processes, branches, anything you can pipe into it.
ripgrep
Searches a whole directory tree for a pattern in a fraction of the time grep takes, and skips what gitignore says to skip.
Television
Search files and other data through a terminal fuzzy finder.
zoxide
Learns the directories you actually use, so changing to one takes a few letters instead of a full path.