Сколько времени вы тратите на ввод длинных путей вроде cd ~/projects/company/client/app-backend/..., судорожно нажимая Tab и пытаясь вспомнить точное название папки? Когда количество проектов переваливает за несколько десятков, навигация в терминале превращается в утомительный квест. В 2026 году продолжать мучить себя стандартной командой cd — это неоправданная трата ресурсов.

zoxide — это «умная» замена cd, написанная на Rust. Она анализирует ваши перемещения по системе, запоминает часто используемые пути и позволяет мгновенно «телепортироваться» в нужную директорию по паре букв. Зашли один раз в /var/log/nginx? Теперь достаточно набрать z nginx, и вы на месте. Забудьте про длинные абсолютные пути.

Установка zoxide

Инструмент доступен в официальных репозиториях большинства дистрибутивов:

# Ubuntu/Debian
sudo apt install zoxide

# Arch Linux
sudo pacman -S zoxide

# Fedora
sudo dnf install zoxide

# openSUSE
sudo zypper install zoxide

# macOS
brew install zoxide

Инициализация в командной оболочке

После установки необходимо добавить строку инициализации в конфигурационный файл вашего шелла (Bash или Zsh):

# Для Bash (~/.bashrc)
eval "$(zoxide init bash)"

# Для Zsh (~/.zshrc)
eval "$(zoxide init zsh)"

Чтобы изменения вступили в силу, перезапустите терминал или выполните source ~/.bashrc. Теперь zoxide начнет собирать базу ваших перемещений.

Базовое использование

Вместо того чтобы вводить полный путь, используйте ключевые слова из названия папки:

# Вместо cd /var/log/nginx
z nginx

# Вместо cd ~/projects/awesome-project
z awesome

# Если есть несколько совпадений — zoxide сам предложит лучший вариант

# Показать список всех запомненных папок
zoxide query -l

# Прыгнуть в папку с интерактивным выбором (если не уверены)
zi

Киллер-фичи, которые экономят время

1. Нечёткий поиск по подстроке

Если вы когда-то посещали /home/user/projects/linux-administration-scripts/tools/backup, вам больше не нужно помнить этот путь. Достаточно z backup. Алгоритм поймет, что вы имели в виду.

2. Ранжирование по частоте и давности (Frecency)

Zoxide использует алгоритм, который учитывает, как часто и как недавно вы посещали директорию. Если вы наберете z doc, вы попадете в ~/Documents, если бываете там чаще, чем в ~/Downloads.

3. Интерактивный выбор через fzf

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

4. Полная подмена cd

Вы можете сделать привычную команду cd умнее, добавив специальный флаг при инициализации:

eval "$(zoxide init zsh --cmd cd)"

Теперь cd будет работать и как стандартная команда, и как телепорт zoxide.

5. Импорт истории из autojump

Если вы ранее использовали autojump, переезд будет мгновенным:

zoxide import --from=autojump "$HOME/.local/share/autojump/autojump.txt"

6. Управление базой данных

Если папка была удалена или вы больше не хотите видеть её в истории:

zoxide remove /old/project

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

Плюсы:

  • Колоссальная экономия времени: z nginx против cd /var/log/nginx — это десятки сэкономленных секунд в день.
  • Производительность: Благодаря Rust, утилита работает молниеносно.
  • Адаптивность: Инструмент обучается на лету и не требует ручной настройки «закладок» для путей.

Минусы:

  • Необходимость установки дополнительного пакета (хотя это делается одной командой).
  • Эффект «пустой базы»: в первые часы работы zoxide нужно походить по папкам, чтобы он их запомнил.

Лайфхак: Обязательно установите fzf. Тогда команда zi станет невероятно мощным инструментом визуальной навигации.

# Установка fzf
sudo apt install fzf

Что и когда использовать?

  • z — для повседневной работы и мгновенных прыжков.
  • zi — когда не помните точное название или хотите выбрать из списка.
  • cd — оставьте для скриптов автоматизации.
  • cd - — для быстрого возврата (впрочем, zoxide поддерживает и z -).

Ссылка на GitHub проекта