命令行福利——切换目录autojump
2018-07-14 本文已影响51人
于卫国
本文介绍了autojump的使用,使用autojump可以很方便地切换目录。
本文首发:http://yuweiguocn.github.io/
《峨眉山月歌》
峨眉山月半轮秋,影入平羌江水流。
夜发清溪向三峡,思君不见下渝州。
—唐,李白
前言
用过命令行的同学都知道,在终端下切换目录需要使用命令 cd,如果是多层目录结构需要不停的使用 cd 命令或使用Tab键补齐,如果目录中文件夹太多,你可能还需要使用 ls 查看下当前目录中的文件夹,在不知道有更好的工具之前,觉得这样做是很正常的,也不觉得麻烦,直到我遇见了它——autojump.
autojump
autojump可以很方便地帮我们切换到指定目录,它的工作原理是维护一个命令行中使用过的目录的数据库。
mac下安装:
brew install autojump
autojump 支持 zsh,添加以下内容到 ~/.bash_profile 或 ~/.zshrc 文件中:
[[ -s $(brew --prefix)/etc/profile.d/autojump.sh ]] && . $(brew --prefix)/etc/profile.d/autojump.sh
记得使用 source 命令使刚才的内容生效:
source ~/.bash_profile
source ~/.zshrc
我们可以使用更简洁的命令 j 来实现目录跳转,j 是对 autojump 命令的包装。在使用 autojump 切换目录前,需要在命令行中使用过该目录。跳转到包含 te 的目录:
j te
话不多说,来看下效果:
使用文件管理器打开目录:
jo te
autojump 支持自动补全,使用Tab键查看匹配的多个目录:
查看 autojump 存储的目录的状态:
j -s
可以看到每个目录都有对应权重,所以当出现匹配多个目录会跳到权重较大的目录下。
更多选项请查看使用帮助:
j -h