Enhancd带有交互式过滤器的下一代 cd 命令
cd
命令是经常使用的命令之一。作为cd
命令参数给出的目录路径必须是存在且能够解析的有效路径。换句话说,你不能将诸如“dir”(你在/home/lisa
, dir 是/home/lisa/work/dir
)之类的部分路径传递给cd
命令。
名为 enhancd 的新 cd 命令增强了用户的灵活性和可用性。enhancd 将记住用户访问的所有目录并将其用于路径名解析。如果 enhancd 的日志有多个同名的目录路径,enhancd 会将候选目录列表传递给 ENHANCD_FILTER 环境变量中的过滤器,以便将其缩小到一个目录。
由于这种机制,用户可以直观、轻松地更改您想要访问的目录。
特征
- 过去访问过的目录
- 易于过滤
- 支持 Bash、Zsh 和 fish
- 回到特定的父目录
- 在 git repo 中,第一个列表元素是 git 根目录
- 相似名称目录中的模糊搜索
- 支持标准输入
- 自定义选项
安装
Bash
# add the fzy brew tap to homebrew $ brew tap jhawthorn/fzy # install fzy and ccat with homebrew $ brew install fzy ccat # alt: brew install fzy ccat percol peco fzf # depending on which interactive filter you want to use # install enhancd into your home directory (or a preferred directory) $ cd ~ $ git clone https://github.com/b4b4r07/enhancd # if you want to hide the directory in the finder (gui) $ chflags hidden enhancd # add enhancd to your bash profile (or sourced file of choice) $ echo "source ~/enhancd/init.sh" >> ~/.bash_profile # reload your bash profile $ source ~/.bash_profile
评论