← Ко всем open source проектам

fzf

junegunn/fzf

fzf — быстрый консольный инструмент нечеткого поиска для поиска и выбора файлов, команд, веток Git, процессов и любых строк текста.

Форки 2,793
Автор junegunn
Язык Go
Лицензия MIT
Обновлено 2026-06-10

Что это такое

fzf — консольный инструмент нечеткого поиска. Он берет список строк из stdin, показывает интерактивный поиск и возвращает выбранную строку. За счет этого fzf легко встраивается в shell, редакторы, Git-сценарии и любые команды, которые выводят текст.

Смысл проекта в универсальности. Это не только «поиск файлов», а маленький интерактивный слой выбора: файл, команда из истории, ветка Git, процесс, результат `rg`, директория или запись из собственного скрипта.

Что внутри

В репозитории — Go-код fzf, shell integration, key bindings, Vim/Neovim plugin, документация по установке через Homebrew, пакеты Linux/Windows, бинарные релизы, режимы отображения, search syntax и множество примеров.

Практический сценарий: передать список в fzf, выбрать строку и использовать ее дальше. Именно pipe-модель делает инструмент гибким: он не требует знать предметную область, ему достаточно списка вариантов.

Выбор файла через fzf

Команда показывает принцип: список файлов попадает в fzf, пользователь выбирает один, затем результат можно передать другой команде.

Язык: Bash
selected=$(find . -type f | fzf)
$EDITOR "$selected"

Сильные стороны и ограничения

Сильная сторона — композиционность Unix-стиля. fzf хорошо сочетается с `find`, `rg`, `git`, `ps`, `kubectl` и собственными скриптами, добавляя интерактивность без большого приложения.

Ограничение — терминальная модель. Пользователю нужно комфортно жить в командной оболочке и понимать конвейеры команд. Для визуального файлового менеджера или сложной навигации с предпросмотром fzf часто требует настройки.