macOS
brew install bfslocal Homebrew formula metadata
sudo port install bfsMacPorts ports tree · sysutils/bfs/Portfile · source: api.github.com
brew
Breadth-first version of find. Version 4.1.4 via Homebrew; verified 2026-06-29.
install
brew install bfslocal Homebrew formula metadata
sudo port install bfsMacPorts ports tree · sysutils/bfs/Portfile · source: api.github.com
sudo apk add bfsAlpine Linux edge package indexes · bfs · source: dl-cdn.alpinelinux.org
sudo apt install bfsDebian stable package indexes · bfs · source: deb.debian.org
sudo dnf install bfsFedora Rawhide package metadata · bfs · source: dl.fedoraproject.org
nix profile install nixpkgs#bfsnixpkgs package indexes · pkgs/by-name/bf/bfs/package.nix · source: api.github.com
sudo pacman -S bfsArch Linux sync databases · bfs · source: geo.mirror.pkgbuild.com
overview
Breadth-first version of find
history
bfs is a C implementation of a breadth-first variant of the Unix find command. It aims to remain compatible with POSIX, GNU, BSD, and macOS find behavior while adding a friendlier command-line parser, diagnostics, and practical extensions.
The official repository was created in June 2015. Early tags show a pre-1.0 series before the project reached 1.0 in 2017, followed by 2.0 in October 2020, 3.0 in July 2023, 4.0 in August 2024, and active 4.1.x maintenance through June 2026.
The README documents the core design choice: unlike traditional depth-first find traversal, bfs lists shallower paths first. Around that foundation it adds compatibility with several find dialects, argument-order leniency, typo suggestions, expression warnings, and convenience extensions such as -exclude and -nohidden.
bfs has unusually broad packaging for a small Unix utility. Its README lists packages for Alpine, Arch, Debian/Ubuntu, Fedora, Gentoo, Guix, macOS, and other systems, and the input separately records Homebrew, MacPorts, Nix, pacman, zypper, Debian, Ubuntu, and Alpine packaging.
That packaging footprint reflects the niche: bfs is not a replacement for every find use, but it is attractive to users who want familiar find syntax with better traversal behavior, diagnostics, and cross-platform consistency.
Users run bfs much like find: searching directory trees by name, type, size, metadata, predicates, and actions. Its breadth-first order can surface shallow matches earlier, and its parser accepts common argument placements that traditional find variants reject.
The tool is also useful in scripts when its extensions matter, but its package value is strongest for interactive shell use where friendlier errors and faster discovery of shallow matches save time.
bfs is notable to package-focused users because it reimagines one of Unix's oldest daily-driver commands without throwing away compatibility. That makes it a rare modern system utility that can be installed next to the base tool and immediately compared on real workflows.
Its significance is not just breadth-first search. The interesting packaging story is a small, carefully maintained C utility earning broad distro adoption by being faster to understand than find, stricter about warning users when expressions are probably wrong, and portable enough to ship across Linux and macOS ecosystems.
security posture
narrow executable package without higher-risk signals.
green risk · low confidence · appliance
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
bfs | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://github.com/tavianator/bfs
install metadata
| Package key | brew:bfs |
|---|---|
| Version | 4.1.4 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/bfs |
| Homepage | https://tavianator.com/projects/bfs.html |
| Repository | https://github.com/tavianator/bfs |
| Upstream docs | https://tavianator.com/projects/bfs.html |
| License | 0BSD |
| Source archive | https://github.com/tavianator/bfs/archive/refs/tags/4.1.4.tar.gz |
| Last updated | 2026-06-29T20:47:31Z |
| Pulse | updated |
| Dependencies | oniguruma |
| Build dependencies | pkgconf |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | bfs |
| Version Scheme | 0 |
| Revision | 0 |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
bfs 4.0.6-1
Breadth-first version of find(1)
https://github.com/tavianator/bfs
sudo apt install bfsbfs
nix profile install nixpkgs#bfsbfs 3.1.2-1build1
Breadth-first version of find(1)
https://github.com/tavianator/bfs
sudo apt install bfsbfs 4.1-r1
Breadth-first variant of the UNIX find command
https://github.com/tavianator/bfs
sudo apk add bfsbfs-bash-completion 4.1-r1
Bash completions for bfs
https://github.com/tavianator/bfs
sudo apk add bfs-bash-completionbfs-doc 4.1-r1
Breadth-first variant of the UNIX find command (documentation)
https://github.com/tavianator/bfs
sudo apk add bfs-docbfs-fish-completion 4.1-r1
Fish completions for bfs
https://github.com/tavianator/bfs
sudo apk add bfs-fish-completionbfs-zsh-completion 4.1-r1
Zsh completions for bfs
https://github.com/tavianator/bfs
sudo apk add bfs-zsh-completionbfs 4.1.2-1.fc45
A breadth-first version of the UNIX find command
https://tavianator.com/projects/bfs.html
sudo dnf install bfsbfs 4.1.2-1
A breadth-first version of find
https://tavianator.com/projects/bfs.html
sudo pacman -S bfsbfs
sudo port install bfssource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.