Поиск по сайту:

Fzf — быстрый нечеткий поиск файлов из терминала Linux


Fzf — это крошечный, невероятно быстрый, универсальный и кроссплатформенный инструмент нечеткого поиска с командной строкой, который помогает вам быстро искать и открывать файлы в операционных системах Linux и Windows. Он портативен, не имеет зависимостей и имеет гибкий макет с поддержкой плагина Vim/Neovim, привязок клавиш и нечеткого автозаполнения.

Следующий GIF показывает, как это работает.

Чтобы установить Fzf, вам необходимо с помощью git клонировать репозиторий fzf на Github в любой каталог и запустить сценарий установки, как показано в вашем дистрибутиве Linux.

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

После запуска сценария вам будет предложено включить нечеткое автозаполнение, привязки клавиш и обновить файл конфигурации оболочки. Ответьте y (для да) на вопросы, как показано на следующем снимке экрана.

В Fedora 26 и более поздних версиях, а также в Arch Linux вы можете установить ее через менеджер пакетов, как показано.

sudo dnf install fzf	#Fedora 26+
sudo pacman -S fzf	#Arch Linux 

Теперь, когда вы установили fzf, вы можете начать его использовать. Когда вы запустите fzf, откроется интерактивный поисковик; считывает список файлов из stdin и записывает выбранный элемент в stdout.

Просто введите имя файла, который вы ищете, в командной строке. Когда вы его найдете, нажмите Enter, и относительный путь к файлу будет выведен на stdout.

fzf

Альтернативно, вы можете сохранить относительный путь к файлу, который вы ищете, в именованный файл и просмотреть содержимое файла с помощью такой утилиты, как команда cat или bcat.

fzf >file
cat file
OR
bat file

Вы также можете использовать его, например, вместе с командой find.

find ./bin/ -type f | fzf >file
cat file

Как использовать нечеткое завершение в Bash и Zsh

Чтобы вызвать нечеткое завершение для файлов и каталогов, добавьте символы ** в качестве триггерной последовательности.

cat **<Tab>

Вы можете использовать эту функцию при работе с переменными среды в командной строке.

unset **<Tab>
unalias **<Tab>
export **<Tab>

То же самое относится и к командам ssh и telnet для автоматического заполнения имен хостов, считываемых из файлов /etc/hosts и . ~/.ssh/config.

ssh **<Tab>

Он также работает с командой kill, но без последовательности триггеров, как показано.

kill -9 <Tab>

Как включить fzf как плагин Vim

Чтобы включить fzf в качестве плагина Vim, добавьте следующую строку в файл конфигурации Vim.

set rtp+=~/.fzf

fzf активно развивается и его можно легко обновить до последней версии с помощью следующей команды.

cd ~/.fzf && git pull && ./install

Чтобы просмотреть полный список вариантов использования, запустите man fzf или посетите репозиторий Github: https://github.com/junegunn/fzf.

Читайте также: Silver Searcher — инструмент поиска кода для программистов

Fzf — это невероятно быстрый и универсальный инструмент для быстрого поиска файлов в Linux. Он имеет множество вариантов использования, например, вы можете настроить индивидуальное использование для вашей оболочки. Если у вас есть какие-либо вопросы или комментарии, свяжитесь с нами через форму обратной связи ниже.