一个快速导航 Linux 文件系统的神器
在 Linux 中,有一个非常强大的神器 - autojump,能够快速地进行文件系统导航。
该程序是用 Python 编写的,是 cd 命令的加强版。它的工作原理是维护一个数据库,其中包含了从命令行经常使用的目录。
GitHub 地址:https://github.com/wting/autojump
注意:在跳转到某个目录之前,必须先访问该目录。
1
安装配置
在大多数的 Linux 发行版中,软件仓库都包含了 autojump,通过包管理器可以快速地安装:
$ sudo apt install autojump
注意:如果想从源码安装,需要克隆源码并执行 Python 脚本。
查看一下版本号,看是否能够成功,结果尴尬的报错了:
$ autojump -v
Please source the correct autojump file in your shell's
startup file. For more information, please reinstall autojump
and read the post installation instructions.
这时需要配置一下,为使其在 bash 中永久生效,运行以下命令:
$ echo '. /usr/share/autojump/autojump.sh'>>~/.bashrc
并刷新配置文件:
$ source ~/.bashrc
2
基本用法
j 是 autojump 的一个便利包装函数,
任何能与 autojump 一起使用的选项都可以与 j 一起使用,反之亦然。
1. 跳转到一个包含 workspace 的目录:
$ j workspace
/home/waleon/workspace
2. 有时候,跳转到先前到过的子目录比键入全名更方便:
$ jc autotest
/home/waleon/workspace/AutoTest
3. 打开一个文件资源管理器窗口到某个目录(而非跳转):
$ jo workspace
同样地,也支持打开文件管理器到子目录(效果图同上):
$ jco autotest
4. 目录的权重
通过 --stat 选项可以查看访问过的目录权重,路径前的数字是该路径的权重值:
$ j --stat
20.0: /etc
26.5: /home/waleon/workspace/QTK
26.5: /home/waleon/working
41.2: /home/waleon/workspace/AutoTest
51.0: /usr/share
52.0: /home/waleon/workspace
________________________________________
217: total weight
6: number of entries
26.46: current directory weight
data: /home/waleon/.local/share/autojump/autojump.txt
如果在跳转时匹配到了多个目录,优先进入权重值高的那个。
例如,上面有两个目录都包含了 work,如果同时匹配会进入 workspace 而非 working(因为 52.0 > 26.5):
$ j work
/home/waleon/workspace
当然了,也可以像下面这样跳转到权重较小的目录:
$ j w work
/home/waleon/working
友情提示:autojump 的运行日志存储在 ~/.local/share/autojump/ 目录下,千万不要瞎搞里面的文件,否则有可能失去所有的统计结果。
是不是相见恨晚?相信你一定会爱上它的 !
·END·