切换目录,你还在用 cd 一层一层敲吗?
cd work → cd company → cd project → cd src → ...
说实话,这是自虐。
装个zoxide吧。
Before / After
Before:
cd ~/work/company/awesome-project/src/components
# => ~/work/company/awesome-project/src/components
After:
cd components
# => ~/work/company/awesome-project/src/components
去过一次的目录,zoxide会帮你记住,下次只需要输入路径的一部分就能直达。
嫌 cd components 还是太长?没问题,cd comp 也行。
cd comp
# => ~/work/company/awesome-project/src/components
安装配置
curl -sSfL https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | sh
echo "eval \"\$(zoxide init $(basename $SHELL) --cmd cd)\"" >> ~/.$(basename $SHELL)rc
重点是 --cmd cd。这样直接替换掉原来的 cd 命令,多年练成的肌肉记忆完全不用改。你照常敲 cd,它自动变聪明。
小技巧
交互式选择
如果有多个同名目录,默认会跳到最近访问的那个。想手动选?用 cdi:
cdi comp
# 从多个带comp的目录中选择
Claude Code
装了zoxide之后,Claude Code里的cd命令可能会出问题。
此外,为了避免意外跳转,建议加上这个配置:
if [[ $- == *i* ]]; then
eval "$(zoxide init zsh --cmd cd)"
fi
3分钟搞定,习惯不变。不信你试试。