A command-line fuzzy finder written in Go. It's an interactive filter for any kind of list: files, command history, processes, hostnames, bookmarks, git commits, etc.
fzf is a versatile command-line fuzzy finder that serves as an interactive filter for any kind of list - files, command history, processes, hostnames, bookmarks, git commits, and more. It implements a "fuzzy" matching algorithm that allows you to quickly type patterns with omitted characters while still getting accurate results. The tool is designed to be lightning-fast, capable of processing millions of items instantly.
What sets fzf apart is its comprehensive integration ecosystem and customization options. It comes with built-in integrations for popular shells (Bash, Zsh, Fish) and editors (Vim, Neovim), providing seamless fuzzy completion and key bindings. The tool is highly customizable through an event-action binding mechanism, allowing users to tailor it to their specific workflows. fzf is distributed as a single portable binary, making installation straightforward across different platforms.
fzf is ideal for developers, system administrators, and power users who work extensively with the command line and want to enhance their productivity. Whether you're navigating large codebases, searching through command history, or filtering through system processes, fzf provides an intuitive and efficient interface that significantly speeds up common tasks.
# via Homebrew
brew install fzf
# via APT
sudo apt install fzf
# via Git
git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf && ~/.fzf/install
