zoxide とは
zoxide は Ajeet D'Souza が Rust で書いた賢い cd コマンドです。z と autojump に着想を得ています。よく使うディレクトリを覚えているので、数打鍵で「飛ぶ」ことができます。GitHub スターは 2 万 8,000 を超え、世界中のコマンドラインユーザーのディレクトリ移動を変えました。
⚡ zoxide の主な機能
🧠 使うほど賢くなる
ディレクトリの使い方を学習し、頻度と新しさで順位付けします。よく訪れるディレクトリほど、たどり着きやすくなります。
🔍 あいまい検索
部分一致でディレクトリに移動できます。数文字打つだけで、履歴から正しいディレクトリを見つけてくれます。
🐚 主要なシェルすべてに対応
bash、zsh、fish、PowerShell、Nushell、Elvish、Tcsh、Xonsh に対応。主要なシェルすべてで同じ体験になります。
🔌 充実した連携
対話的に選ぶための fzf 連携をネイティブに備え、Vim、Emacs、ファイルマネージャ、tmux セッションマネージャ向けのプラグインもあります。
📊 データのインポート
autojump、z、z.lua、fasd など、他のディレクトリジャンプツールのデータを取り込めます。ゼロから始め直す必要はありません。
⚙️ 細かく設定できる
スコアリングのアルゴリズム、除外パターン、経年による減衰、コマンドの接頭辞まで設定できます。使い方に合わせて調整できます。
🏆 生産性の面でのメリット
- 時間の節約: フルパスを打つ代わりに、2〜3 打鍵でどこへでも
- ミスが減る: 長いパスの打ち間違いとお別れ
- 使い方を学習: よく使うディレクトリに自動で適応します
- セッションをまたいで: 端末を閉じてもディレクトリを覚えています
- 対話モード: fzf と組み合わせて、目で見ながらディレクトリを選べます
apt upgrade を実行するだけで、常に最新版を使い続けられます。
📦 deb.griffo.io からインストールする
ステップ 1: リポジトリを追加する
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt updateinstall -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt updatesudo apt install extrepo
sudo extrepo enable griffo
sudo apt update🆓 ずっと無料のミラーがあります。 deb-free.griffo.io は、アカウントもサブスクリプションもなしでパッケージをずっと無料で配布しています。上流より最大2か月遅れ、セキュリティ修正は即座に公開されます。現在収録しているのは cliamp、Ghostty、lazydocker、Oh My Posh と Zed です。zoxide は含まれていないため、今日入手する方法は上のリポジトリだけですが、ご要望があれば追加できます。
🧩 extrepo オプションについて。 extrepo は外部リポジトリを扱う Debian 標準のツールです。署名済みメタデータと照合して鍵を検証したうえで、sources ファイルの作成と署名鍵のインストールを代わりに行います。このリポジトリは griffo、ずっと無料のミラーは griffo-free という名前で登録されているので、Debian(bookworm、trixie、forky、sid)では上のコマンドだけで設定は完了です。
extrepo が用意するのは sources ファイルと鍵だけなので、サブスクリプションの認証情報は引き続き /etc/apt/auth.conf.d/deb.griffo.io.conf に書きます。extrepo は Debian のスイート向けメタデータしか公開していないため Ubuntu は対象外です。Ubuntu では sudo または root のコマンドを使ってください。
ステップ 2: zoxide をインストールする
# 最新の zoxide をインストール
sudo apt install zoxide
# インストールを確認
zoxide --version# 最新の zoxide をインストール
apt install zoxide
# インストールを確認
zoxide --versionステップ 3: シェル連携を設定する
# bash を使っている場合
echo 'eval "$(zoxide init bash)"' >> ~/.bashrc
# zsh を使っている場合
echo 'eval "$(zoxide init zsh)"' >> ~/.zshrc
# fish を使っている場合
echo 'zoxide init fish | source' >> ~/.config/fish/config.fish
# シェルを読み込み直す
source ~/.bashrc # または ~/.zshrc🎯 基本的な使い方
賢いディレクトリ移動:
# 「projects」を含むディレクトリへジャンプ
z projects
# 「my」と「app」に一致するディレクトリへジャンプ
z my app
# 「src」で始まるサブディレクトリへジャンプ
z src/
# 直前のディレクトリに戻る
z -
# fzf で対話的に選ぶ
zi従来の cd も動きます:
# ふつうの cd としても使える
z ~/Documents
z ../
z /usr/local/bin
# 相対パス
z ./src/components高度な機能:
# ジャンプせずにディレクトリを問い合わせる
zoxide query projects
# ディレクトリを手動で追加
zoxide add /path/to/directory
# データベースからディレクトリを削除
zoxide remove /path/to/directory
# 他のツールから取り込む
zoxide import --from=autojump ~/.local/share/autojump/autojump.txt
zoxide import --from=z ~/.zカスタマイズ:
# 別のコマンド接頭辞を使う(z ではなく j)
eval "$(zoxide init bash --cmd j)"
# cd を完全に置き換える
eval "$(zoxide init bash --cmd cd)"
# ジャンプ前にディレクトリを表示
export _ZO_ECHO=1
# 特定のディレクトリを除外
export _ZO_EXCLUDE_DIRS="$HOME:$HOME/private/*"🚀 deb.griffo.io を選ぶ理由
- 公式 Debian: 提供はあるが、古いバージョンであることが多い
- cargo install: Rust ツールチェインとコンパイルが必要
- インストールスクリプト: 更新は手動で、パッケージ管理もなし
- deb.griffo.io: 最新版を自動更新でお届け
- ✅ 最新のアルゴリズム: スコアリングとマッチングの最新改善が手に入ります
- ✅ Rust のコンパイル不要: ビルド済みバイナリなので、ツールチェインは要りません
- ✅ 自動更新: 上流のリリースから数時間以内にパッケージを更新
- ✅ 全部入り: シェル連携とドキュメントを同梱
- ✅ マルチディストリビューション: Bookworm、Trixie、Sid で動作
- ✅ 手間のかからない運用: 更新は通常の apt コマンドだけ
📦 パッケージのビルドリポジトリ
Debian パッケージは、この GitHub リポジトリで自動的にビルド・管理されています:
- 📂 zoxide-debian - 最新リリースのビルド
🔗 関連パッケージ
deb.griffo.io では、こちらも配布しています:
- fzf ファジーファインダー - zoxide を対話的に選ぶための相棒
- eza - 見やすいディレクトリ一覧のための、モダンな ls の代替
- Yazi ファイルマネージャ - zoxide と連携して賢く移動