Yazi - терминальный файловый менеджер, написанный на Rust, который позволяет просматривать, предварительно просматривать и управлять файлами. Он использует асинхронный ввод-вывод для повышения производительности и хорошо работает с такими инструментами, как ripgrep и fzf, обеспечивая быстрый рабочий процесс с клавиатурным управлением.

Например, представьте папку с 20 000 логов. В Nautilus загрузка содержимого может занять несколько секунд. Ranger также может замедляться, так как обрабатывает записи каталога последовательно. Yazi работает иначе.

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

Что такое Yazi и почему он работает иначе

Yazi - терминальный файловый менеджер, созданный для скорости. Он написан на Rust и использует асинхронный (неблокирующий) ввод-вывод, что позволяет выполнять несколько задач одновременно, не дожидаясь завершения предыдущей.

На практике это делает Yazi гораздо более отзывчивым. Например, вы можете начать просмотр большого каталога сразу, а Yazi продолжит загружать информацию о файлах и генерировать миниатюры в фоне. Интерфейс остаётся плавным, а не зависает до полной загрузки.

Это руководство протестировано на Ubuntu 26.04 и Rocky Linux 10, но те же команды работают в большинстве современных дистрибутивов Linux с актуальным эмулятором терминала.

Yazi включает две программы командной строки:

  • yazi - запускает файловый менеджер.
  • ya - устанавливает и управляет плагинами, темами и вариантами оформления Yazi.

В этом руководстве для настройки Yazi с плагинами и темами мы будем использовать команду ya.

Совет: если вы хотите чаще выполнять повседневные задачи из терминала, курс Learn Linux in 7 Days поможет вам шаг за шагом освоить нужные навыки.

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

Yazi не входит в стандартные репозитории Ubuntu, Debian, RHEL или Rocky Linux, поэтому установить его можно из официального бинарного релиза или собрать с помощью Cargo.

Установка Yazi на Ubuntu/Debian

curl -LO https://github.com/sxyazi/yazi/releases/latest/download/yazi-x86_64-unknown-linux-gnu.zip
unzip yazi-x86_64-unknown-linux-gnu.zip
sudo mv yazi-x86_64-unknown-linux-gnu/yazi \
        yazi-x86_64-unknown-linux-gnu/ya \
        /usr/local/bin/

Вот что делает каждая команда:

  • curl -LO загружает последний релиз Yazi с GitHub.
  • unzip распаковывает скачанный архив.
  • sudo mv копирует исполняемые файлы yazi и ya в /usr/local/bin, который находится в пути поиска исполняемых файлов системы.

Примечание: команда sudo требуется, потому что /usr/local/bin принадлежит пользователю root. Без неё появится ошибка Permission denied.

Установка Yazi на RHEL/Rocky Linux

sudo dnf install cargo
cargo install --locked yazi-fm yazi-cli

Вот что делают эти команды:

  • sudo dnf install cargo устанавливает Cargo, менеджер пакетов Rust.
  • cargo install --locked yazi-fm yazi-cli загружает, собирает и устанавливает как файловый менеджер Yazi, так и команду ya.
  • Параметр --locked использует версии зависимостей, зафиксированные разработчиками Yazi, что обеспечивает надёжную сборку.

Проверка установки

После установки проверьте, доступен ли Yazi, выполнив:

yazi --version

Если установка прошла успешно, вы увидите номер версии. Если появляется ошибка «command not found», убедитесь, что установка завершена корректно и /usr/local/bin добавлен в PATH.

Совет: если вы следуете этому руководству на новом VPS, а не на локальной машине, DigitalOcean предлагает облачные VPS-планы от $4/мес. Участники TecMint Pro также получают $200 кредита для тестирования первого сервера. (Редакция может получать комиссию без дополнительных затрат для вас.)

Первый взгляд: запуск и навигация

Запустите Yazi командой:

yazi

По умолчанию Yazi открывается в текущем каталоге и отображает три панели:

  • Левая панель - родительский каталог.
  • Средняя панель - текущий каталог.
  • Правая панель - предварительный просмотр выбранного файла.

Панель предпросмотра в реальном времени - одно из главных преимуществ Yazi. При перемещении по файлам превью обновляется автоматически, без запуска других приложений.

Основы навигации

Yazi использует сочетания клавиш в стиле Vim для навигации.

Key | Action j | Вниз k | Вверх l | Открыть файл или перейти в каталог h | Вернуться в родительский каталог / | Поиск по именам файлов S | Поиск содержимого с помощью ripgrep

Например, используйте j и k для перемещения по списку файлов. Нажмите l, чтобы войти в каталог или открыть файл, и h, чтобы вернуться на уровень выше.

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

Предварительный просмотр изображений, PDF и видео

Одна из самых полезных функций Yazi - встроенная панель предпросмотра. Просто наведите курсор на поддерживаемый файл, и Yazi покажет предварительный просмотр, не открывая другую программу.

Поддерживаются предпросмотры для многих распространённых типов файлов:

  • Изображения (.png, .jpg, .jpeg, .gif, .webp)
  • PDF-документы
  • Видео
  • Текстовые файлы
  • Архивы

Примечание: поддержка предпросмотра изображений зависит от эмулятора терминала. Такие терминалы, как Kitty, WezTerm и Ghostty, поддерживают встроенный предпросмотр изображений Yazi. Если вы используете терминал на основе VTE, например GNOME Terminal или Tilix, предпросмотр не отобразится, так как эти терминалы не поддерживают необходимые графические протоколы. В этом случае Yazi продолжит нормально работать, но панель предпросмотра изображений останется пустой.

Выделение, переименование и массовые операции

Yazi упрощает работу с несколькими файлами с помощью одной клавиатуры. Нажмите клавишу Space, чтобы выделить текущий файл без перемещения курсора. Продолжайте перемещаться по каталогу и нажимайте Space на других файлах, чтобы добавить их в выделение.

После этого скопируйте и вставьте их, используя знакомые сочетания:

Key | Action Space | Выделить или снять выделение y | Копировать выделенные файлы p | Вставить скопированные файлы в текущий каталог

Массовое переименование файлов

Одна из самых полезных функций Yazi - пакетное переименование. Выделив несколько файлов, нажмите r. Yazi откроет список имён выделенных файлов в вашем текстовом редакторе по умолчанию ($EDITOR).

Например:

IMG_2024_01.jpg
IMG_2024_02.jpg
IMG_2024_03.jpg

Отредактируйте названия по своему усмотрению:

holiday-01.jpg
holiday-02.jpg
holiday-03.jpg

Сохраните файл и закройте редактор. Yazi сравнит исходный список с изменённым и переименует только те файлы, имена которых изменились.

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

Совет: если вы часто выполняете повторяющиеся операции с файлами, курс по Bash Scripting (ссылка) покажет, как автоматизировать их с помощью простых скриптов.

Поиск имён и содержимого файлов

Yazi предлагает два метода поиска:

  • / - поиск по именам файлов в текущем каталоге.
  • S - поиск внутри содержимого файлов с помощью ripgrep.

Чтобы выполнить поиск по содержимому, нажмите S и начните вводить поисковый запрос.

Например:

S nginx: upstream timed out

Yazi использует ripgrep для поиска по файлам и обновляет результаты по мере ввода. Подходящие файлы сразу отображаются в текущей панели.

При нажатии Enter на результате поиска Yazi откроет файл в редакторе по умолчанию рядом с найденным текстом, что ускоряет поиск и редактирование нужной информации.

Расширение Yazi с помощью плагинов

Yazi включает встроенный менеджер пакетов ya, позволяющий устанавливать плагины для добавления новых функций или настройки файлового менеджера. Плагины могут отображать статус Git, улучшать предпросмотр, менять интерфейс и многое другое.

Например, установить официальный плагин статуса Git и плагин Full Border можно так:

ya pkg add yazi-rs/plugins:git
ya pkg add yazi-rs/plugins:full-border

Вот что делают эти команды:

  • ya pkg add загружает и устанавливает плагин из репозитория GitHub.
  • yazi-rs/plugins:git устанавливает официальный плагин Git, показывающий статус файлов (изменённые, неотслеживаемые).
  • yazi-rs/plugins:full-border устанавливает плагин Full Border, добавляющий рамки вокруг панелей для другого визуального стиля.

Просмотреть все установленные плагины можно командой:

ya pkg list

Пример вывода:

Plugins:
	yazi-rs/plugins:git (bb758e2)
	yazi-rs/plugins:full-border (bb758e2)
Flavors:

Чтобы обновить все установленные плагины до последних версий, используйте:

ya pkg upgrade

После установки плагин записывается в файл:

~/.config/yazi/package.toml

Большинство плагинов также требуют небольших изменений в конфигурации:

~/.config/yazi/init.lua

Требуемые настройки различаются для каждого плагина, поэтому изучите документацию плагина для точных инструкций.

Примечание: команда ya pkg доступна в последних версиях Yazi (включая Yazi 26.x). Если вы следуете старым руководствам, где используется ya pack, эти команды устарели и больше не работают.

Заключение

Yazi - быстрый и современный терминальный файловый менеджер, делающий работу с файлами эффективнее. Асинхронное проектирование сохраняет отзывчивость интерфейса даже при просмотре крупных каталогов, а встроенные предпросмотры, клавиатурная навигация и мощные инструменты поиска позволяют управлять файлами, не покидая терминал.

В этом руководстве вы узнали, как установить Yazi, перемещаться по каталогам, просматривать файлы, выполнять поиск с помощью ripgrep, выполнять массовые операции с файлами и расширять функциональность с помощью плагинов.

Если вы новичок в терминальных файловых менеджерах, начните использовать Yazi в каталоге, с которым регулярно работаете. Попробуйте предпросмотр файлов, выделение нескольких файлов и массовое переименование, чтобы увидеть, как они могут упростить рабочий процесс.

Пользовались ли вы Yazi или другим терминальным файловым менеджером? Поделитесь своим опытом, любимыми плагинами или советами по рабочему процессу в комментариях ниже.