bfs
A breadth-first variant of the UNIX find command that stays compatible with common find versions.
These buttons open the developer's own site, repository or store listing in a new tab. wares.gg does not host downloads.
About bfs
bfs searches directory trees breadth-first rather than depth-first, so files closer to the starting directory show up before deeply nested ones. This tends to surface the results you want sooner when searching large trees.
It is otherwise compatible with many versions of find, including POSIX, GNU, FreeBSD, OpenBSD, NetBSD and macOS find, so existing find commands and habits carry over. Shell completions and documentation are included in the repository.
Strengths
- Breadth-first order finds shallow matches first
- Drop-in compatible with GNU, BSD, macOS and POSIX find
- Existing find syntax works unchanged
Limitations
- Keeps find's syntax, which some users find awkward
- No native Windows support mentioned
Details
- Pricing
- FreeFree and open source.
- License
- Open source, license not stated
- Developer
- Tavian Barnes
- Platforms
- macOS, Linux, Command line
- How it runs
- Downloadable app
- Account
- Not required
- Works offline
- Yes
- Best suited for
- Terminal users who rely on find and want nearby results first
- Categories
- CLI tools
- Last verified
- Added
- Provenance
- Facts checked against the developer's own pages and store listings, 1 sources on file.
Alternatives to bfs
Compare allSoftware that can replace bfs for an important use case, and what changes if you switch.
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 necessarily 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.