介绍
zoxide 是由 Rust 编写、跨平台终端目录快速跳转工具,对标 autojump / z.sh,性能更强、持续维护,使用 frecency(访问频率 + 最近时间) 算法自动排序目录,支持全部主流的shell。
可以解决路径太长、反复敲完整路径、来回切换目录,目录多层嵌套等传统 cd 的疼点。
GitHub:
安装
1. 一键脚本
Linux/macOS/WSL:
curl -sSfL https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | sh默认安装到 ~/.local/bin,确保该目录在 $PATH
2. 包管理器
# macOS Homebrew
brew install zoxide
# Ubuntu/Debian
sudo apt install zoxide
# Cargo(已有rust环境)
cargo install zoxide --locked
# Windows Scoop
scoop install zoxide配置
安装完成后需要在 shell 配置文件加入初始化脚本(这一步不能跳过),重启终端生效。
# Zsh (~/.zshrc)
eval "$(zoxide init zsh)"
# Bash (~/.bashrc)
eval "$(zoxide init bash)"
# Fish (~/.config/fish/config.fish)
zoxide init fish | source
# PowerShell
Invoke-Expression (& { (zoxide init powershell | Out-String) })
写入配置后重载:
# bash
source ~/.bashrc
# zsh
source ~/.zshrc基础命令
进入目录时,
cd/z都会自动记录路径到数据库
基础跳转
z www # 跳匹配 www 得分最高目录
z code java # 同时匹配 code + java
z proj / # 匹配以proj开头的子目录
# 兼容普通cd语法
z ~/work
z ./target
z ..
z -交互式选择
zi # 列出所有历史目录,上下选择
zi proj # 预先过滤含proj的目录辅助工具
zq [path] # 查询匹配路径、打印分数
za [path] # 手动添加目录到数据库
zr [path] # 从数据库删除目录实用功能
Tab 补全 输入
z pro+ 空格 + Tab,弹出候选目录(zsh/bash4.4+/fish 支持)安装 fzf 能让体验更佳:
# 安装fzf brew install fzf #mac sudo apt install fzf #ubuntu如果你当前在使用下面这些插件,又可能想把数据导入到
zoxide中,根据每个插件的标准约定,会自动检测数据文件:zoxide import <plugin>
常见问题
一键脚本安装后
z: command not found检查~/.local/bin是否在$PATH:echo $PATH # bash sed -i '$a export PATH="/root/.local/bin:$PATH"' ~/.bashrc # zsh sed -i '$a export PATH="/root/.local/bin:$PATH"' ~/.zshrc
数据库位置 默认:
~/.local/share/zoxide/db.zo
zoxide:一个更智能的 cd 命令
https://blog.antx.cc/archives/019fa32a-8cc4-74ab-b7ae-40eee07d8235
评论