Если вы часто работаете в терминале, велика вероятность, что вам приходилось иметь дело с длинными списками файлов, обширными историями команд или массивными репозиториями Git. Именно здесь и проявляет себя fzf, нечеткий искатель для командной строки. Он быстрый, гибкий и очень мощный, если его интегрировать в ежедневный рабочий процесс на вашем VPS.

В этой статье вы узнаете, как установить fzf в Linux, настроить его и использовать в практических сценариях, повышающих производительность.

Что такое fzf?

fzf – это нечеткий искатель общего назначения, написанный на языке Go. Он позволяет интерактивно фильтровать списки – например,имена файлов, историю команд, процессы или ветки Git – с помощью логики нечеткого поиска. Это означает, что вам не нужно вводить полное имя искомого элемента – достаточно нескольких запоминающихся символов.

Например, чтобы найти файл application_config_backup.txt, достаточно набрать acb, чтобы он мгновенно появился на экране.

Зачем использовать fzf?

Вот несколько основных причин добавить fzf в свой набор инструментов терминала:

  • 🚀 Удивительно быстрый поиск в огромных массивах данных
  • 🧠 Умное нечеткое сопоставление с минимальным количеством нажатий клавиш
  • 🧩 Простая интеграция с другими инструментами CLI (например, find, rg, git)
  • 🧰 Готовые привязки клавиш для Bash, Zsh и Fish
  • 🔧 Высокая настраиваемость поведения и внешнего вида

Установка fzf в Linux

1. Установка через менеджер пакетов

На Ubuntu/Debian:

sudo apt update
sudo apt install fzf

На Arch Linux / Manjaro:

sudo pacman -S fzf

На Fedora:

sudo dnf install fzf

2. Установка с GitHub (рекомендуется для получения последних возможностей)

git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf
~/.fzf/install

Сценарий установки спросит, хотите ли вы включить полезные расширения оболочки (привязки клавиш и автозавершение) – ответьте “да”, чтобы получить максимальную отдачу от fzf. После установки перезапустите оболочку или установите обновленный профиль.

Основные сценарии использования fzf

1. Поиск файлов

fzf

Запустите ее в каталоге, и вы мгновенно получите интерактивный список всех файлов и каталогов. Начните вводить текст, чтобы отфильтровать их в режиме реального времени.

2. Интеграция с find

find . -введите f | fzf

3. Использование с rg (ripgrep)

rg --files | fzf

4. Поиск в истории команд

история | fzf

5. Интеграция с Git

git log --oneline | fzf

Вы также можете проверять ветки следующим образом:

git checkout $(git branch | fzf)

Пользовательские привязки клавиш и ярлыки

В процессе установки, если вы выбрали привязку клавиш, вы можете делать такие вещи, как:

  • Ctrl-T: Вставить путь(и) выбранного файла в позицию курсора
  • Ctrl-R: поиск и выполнение в истории команд
  • Alt-C: Сменить каталог в интерактивном режиме
  • Эти сочетания клавиш позволяют значительно сократить время, затрачиваемое на навигацию по файлам или вызов команд.

Настройка fzf

Вы можете настраивать внешний вид и поведение fzf с помощью переменных окружения в файле .bashrc или .zshrc:

export FZF_DEFAULT_OPTS="
--высота 40%
--layout=reverse
--border
--preview 'bat --style=numbers --color=always --line-range :500 {}'
"

Это позволяет создать красивый пагинационный интерфейс с поддержкой предварительного просмотра с помощью bat.

Мощные интеграции

Вы можете использовать fzf в паре с такими инструментами, как:

  • tmux: открытие выделенных файлов в новых панелях/окнах

  • fd или rg: для более быстрого обнаружения файлов

  • nnn, lf или ranger: терминальные файловые менеджеры

fzf не ограничивается простым использованием – его реальная мощь проявляется при совместном использовании с другими инструментами Unix.