如何加快 Linux 终端中的目录导航速度
与从命令行浏览目录一样有用,很少有什么比一遍又一遍地重复“cd
ls
cd
ls
cd
ls
...”更令人沮丧,如果您不能百分百确定接下来要进入的目录名称,则必须使用 ls
。然后使用 cd
前往您想去的地方。希望许多终端和 shell 语言现在都提出了强大的自动完成功能来解决这个问题。但你仍然必须一直疯狂地敲击制表键。如果你像我一样懒,你一定会对autojump
很感兴趣。 autojump
是一个命令行实用程序,可以让您直接跳转到您最喜欢的目录,无论您当前位于何处。
在 Linux 上安装 autojump
要在 Ubuntu 或 Debian 上安装 autojump
:
$ sudo apt-get install autojump
要在 CentOS 或 Fedora 上安装 autojump
,请使用 yum
命令。在 CentOS 上,您需要首先启用 EPEL 存储库。
$ sudo yum install autojump
要在 Arch Linux 上安装 autojump
:
$ sudo pacman -S autojump
如果您找不到适合您的发行版的软件包,您始终可以从源代码进行编译。
autojump
的基本用法
autojump
的工作方式很简单:每次启动命令时它都会记录您当前的位置,并将其添加到数据库中。这样,某些目录将比其他目录(通常是最重要的目录)添加得更多,并且它们的权重也会更大。
从那里您可以使用以下语法直接跳转到它们:
$ autojump [name or partial name of the directory]
请注意,您不需要全名,因为 autojump
将遍历其数据库并返回最可能的结果。
例如,假设我们正在使用如下目录结构。

然后,无论您在哪里,下面的命令都会直接带您到 /root/home/doc
。
$ autojump do
如果您也讨厌打字,我建议为 autojump
创建一个别名或使用默认别名。
$ j [name or partial name of the directory]
另一个值得注意的功能是 autojump
支持 zsh
shell 和自动完成。如果您不确定要跳到哪里,只需按制表键,您就会看到完整的路径。
因此保持相同的示例,输入:
$ autojump d
然后点击 Tab 将返回 /root/home/doc
或 /root/home/ddl
。
最后,对于高级用户,您可以访问目录数据库并修改其内容。然后可以通过以下方式手动添加目录:
$ autojump -a [directory]
如果您突然想让它成为您最喜欢和最常用的文件夹,您可以通过从其中启动命令来人为地增加其权重
$ autojump -i [weight]
这将导致该目录更有可能被选择跳转到。相反的是通过以下方式减少其重量:
$ autojump -d [weight]
要跟踪所有这些更改,请输入:
$ autojump -s
将显示数据库中的统计信息,同时:
$ autojump --purge
将从数据库中删除任何不再存在的目录。
总而言之,autojump
将受到所有命令行高级用户的赞赏。无论您是通过 SSH 连接到服务器,还是只是喜欢以老式方式做事,通过更少的击键来减少导航时间始终是一个优点。如果您确实对此类实用程序感兴趣,那么您绝对应该研究一下 Fasd,它本身就值得一篇文章。
您如何看待autojump
?你经常使用它吗?让我们在评论中知道。