Autojump:一个可以在 Linux 文件系统快速导航的高级 cd 命令

简介:

对于那些主要通过控制台或终端使用 Linux 命令行来工作的 Linux 用户来说,他们真切地感受到了 Linux 的强大。 然而在 Linux 的分层文件系统中进行导航有时或许是一件头疼的事,尤其是对于那些新手来说。

现在,有一个用 Python 写的名为 autojump 的 Linux 命令行实用程序,它是 Linux ‘cd’命令的高级版本。

Autojump – Linux 文件系统导航的最快方式

Autojump – Linux 文件系统导航的最快方式

这个应用原本由 Joël Schaerer 编写,现在由 +William Ting 维护。

Autojump 应用可以从用户那里学习并帮助用户在 Linux 命令行中进行更轻松的目录导航。与传统的 cd 命令相比,autojump 能够更加快速地导航至目的目录。

autojump 的特色

  • 自由开源的应用,在 GPL V3 协议下发布。
  • 自主学习的应用,从用户的导航习惯中学习。
  • 更快速地导航。不必包含子目录的名称。
  • 对于大多数的标准 Linux 发行版本,能够在软件仓库中下载得到,它们包括 Debian (testing/unstable), Ubuntu, Mint, Arch, Gentoo, Slackware, CentOS, RedHat 和 Fedora。
  • 也能在其他平台中使用,例如 OS X(使用 Homebrew) 和 Windows (通过 Clink 来实现)
  • 使用 autojump 你可以跳至任何特定的目录或一个子目录。你还可以用文件管理器打开某个目录,并查看你在某个目录中所待时间的统计数据。

前提

  • 版本号不低于 2.6 的 Python

第 1 步: 做一次完整的系统升级

1、 以 root 用户的身份,做一次系统更新或升级,以此保证你安装有最新版本的 Python。

 
 
  1. # apt-get update && apt-get upgrade && apt-get dist-upgrade [基于 APT 的系统]
  2. # yum update && yum upgrade [基于 YUM 的系统]
  3. # dnf update && dnf upgrade [基于 DNF 的系统]
AI 代码解读

 : 这里特别提醒,在基于 YUM 或 DNF 的系统中,更新和升级执行相同的行动,大多数时间里它们是通用的,这点与基于 APT 的系统不同。

第 2 步: 下载和安装 Autojump

2、 正如前面所言,在大多数的 Linux 发行版本的软件仓库中, autojump 都可获取到。通过包管理器你就可以安装它。但若你想从源代码开始来安装它,你需要克隆源代码并执行 python 脚本,如下面所示:

从源代码安装

若没有安装 git,请安装它。我们需要使用它来克隆 git 仓库。

 
 
  1. # apt-get install git [基于 APT 的系统]
  2. # yum install git [基于 YUM 的系统]
  3. # dnf install git [基于 DNF 的系统]
AI 代码解读

一旦安装完 git,以普通用户身份登录,然后像下面那样来克隆 autojump:

 
 
  1. $ git clone git://github.com/joelthelion/autojump.git
AI 代码解读

接着,使用 cd 命令切换到下载目录。

 
 
  1. $ cd autojump
AI 代码解读

下载,赋予安装脚本文件可执行权限,并以 root 用户身份来运行安装脚本。

 
 
  1. # chmod 755 install.py
  2. # ./install.py
AI 代码解读

从软件仓库中安装

3、 假如你不想麻烦,你可以以 root 用户身份从软件仓库中直接安装它:

在 Debian, Ubuntu, Mint 及类似系统中安装 autojump :

 
 
  1. # apt-get install autojump
AI 代码解读

为了在 Fedora, CentOS, RedHat 及类似系统中安装 autojump, 你需要启用 EPEL 软件仓库

 
 
  1. # yum install epel-release
  2. # yum install autojump
  3. # dnf install autojump
AI 代码解读

第 3 步: 安装后的配置

4、 在 Debian 及其衍生系统 (Ubuntu, Mint,…) 中, 激活 autojump 应用是非常重要的。

为了暂时激活 autojump 应用,即直到你关闭当前会话或打开一个新的会话之前让 autojump 均有效,你需要以常规用户身份运行下面的命令:

 
 
  1. $ source /usr/share/autojump/autojump.sh on startup
AI 代码解读

为了使得 autojump 在 BASH shell 中永久有效,你需要运行下面的命令。

 
 
  1. $ echo '. /usr/share/autojump/autojump.sh' >> ~/.bashrc
AI 代码解读

第 4 步: Autojump 的预测试和使用

5、 如先前所言, autojump 将只跳到先前 cd 命令到过的目录。所以在我们开始测试之前,我们要使用 cd切换到一些目录中去,并创建一些目录。下面是我所执行的命令。

 
 
  1. $ cd
  2. $ cd
  3. $ cd Desktop/
  4. $ cd
  5. $ cd Documents/
  6. $ cd
  7. $ cd Downloads/
  8. $ cd
  9. $ cd Music/
  10. $ cd
  11. $ cd Pictures/
  12. $ cd
  13. $ cd Public/
  14. $ cd
  15. $ cd Templates
  16. $ cd
  17. $ cd /var/www/
  18. $ cd
  19. $ mkdir autojump-test/
  20. $ cd
  21. $ mkdir autojump-test/a/ && cd autojump-test/a/
  22. $ cd
  23. $ mkdir autojump-test/b/ && cd autojump-test/b/
  24. $ cd
  25. $ mkdir autojump-test/c/ && cd autojump-test/c/
  26. $ cd
AI 代码解读

现在,我们已经切换到过上面所列的目录,并为了测试创建了一些目录,一切准备就绪,让我们开始吧。

需要记住的一点 : j 是 autojump 的一个封装,你可以使用 j 来代替 autojump, 相反亦可。

6、 使用 -v 选项查看安装的 autojump 的版本。

 
 
  1. $ j -v
  2. $ autojump -v
AI 代码解读

查看 Autojump 的版本

查看 Autojump 的版本

7、 跳到先前到过的目录 ‘/var/www‘。

 
 
  1. $ j www
AI 代码解读

跳到目录

跳到目录

8、 跳到先前到过的子目录‘/home/avi/autojump-test/b‘ 而不键入子目录的全名。

 
 
  1. $ jc b
AI 代码解读

跳到子目录

跳到子目录

9、 使用下面的命令,你就可以从命令行打开一个文件管理器,例如 GNOME Nautilus ,而不是跳到一个目录。

 
 
  1. $ jo www
AI 代码解读

打开目录

打开目录

在文件管理器中打开目录

在文件管理器中打开目录

你也可以在一个文件管理器中打开一个子目录。

 
 
  1. $ jco c
AI 代码解读

打开子目录

打开子目录

在文件管理器中打开子目录

在文件管理器中打开子目录

10、 查看每个文件夹的权重和全部文件夹计算得出的总权重的统计数据。文件夹的权重代表在这个文件夹中所花的总时间。 文件夹权重是该列表中目录的数字。(LCTT 译注: 在这一句中,我觉得原文中的 if 应该为 is)

 
 
  1. $ j --stat
AI 代码解读

查看文件夹统计数据

查看文件夹统计数据

提醒 : autojump 存储其运行日志和错误日志的地方是文件夹 ~/.local/share/autojump/。千万不要重写这些文件,否则你将失去你所有的统计状态结果。

 
 
  1. $ ls -l ~/.local/share/autojump/
AI 代码解读

Autojump 的日志

Autojump 的日志

11、 假如需要,你只需运行下面的命令就可以查看帮助 :

 
 
  1. $ j --help
AI 代码解读

Autojump 的帮助和选项

Autojump 的帮助和选项

功能需求和已知的冲突

  • autojump 只能让你跳到那些你已经用 cd 到过的目录。一旦你用 cd 切换到一个特定的目录,这个行为就会被记录到 autojump 的数据库中,这样 autojump 才能工作。不管怎样,在你设定了 autojump 后,你不能跳到那些你没有用 cd 到过的目录。
  • 你不能跳到名称以破折号 (-) 开头的目录。或许你可以考虑阅读我的有关操作文件或目录 的文章,尤其是有关操作那些以‘-‘ 或其他特殊字符开头的文件和目录的内容。
  • 在 BASH shell 中,autojump 通过修改 $PROMPT_COMMAND 环境变量来跟踪目录的行为,所以强烈建议不要去重写 $PROMPT_COMMAND 这个环境变量。若你需要添加其他的命令到现存的$PROMPT_COMMAND 环境变量中,请添加到$PROMPT_COMMAND 环境变量的最后。

结论:

假如你是一个命令行用户, autojump 是你必备的实用程序。它可以简化许多事情。它是一个在命令行中导航 Linux 目录的绝佳的程序。请自行尝试它,并在下面的评论框中让我知晓你宝贵的反馈。保持联系,保持分享。喜爱并分享,帮助我们更好地传播。

本文来自云栖社区合作伙伴“Linux中国”,原文发布日期:2015-08-10

相关文章
|
19天前
|
linux命令详细说明以及案例
本文介绍了常用的 Linux 命令及其详细说明和示例,包括:`ls`(列出目录内容)、`cd`(更改目录)、`rm` 和 `mv`(删除与移动文件)、`grep`(搜索文本)、`cat`(显示文件内容)以及 `chmod`(更改文件权限)。每个命令均配有功能描述、选项说明及实际案例,帮助用户更好地掌握 Linux 命令的使用方法。
118 56
Linux系统中的cd命令:目录切换技巧
踏过千山,越过万水,人生就是一场不断前行的旅程,总充满了未知与挑战。然而,“cd”命令如同你的旅伴,会带你穿梭在如棋盘一般的文件系统中,探索每一处未知。希望你能从“cd”命令中找到乐趣,像是掌控了一种络新妙的魔法,去向未知进发,开始你的探索之旅。
76 24
Linux系统之su命令的基本使用
Linux系统之su命令的基本使用
44 1
Linux系统之su命令的基本使用
调试技巧 - 用Linux命令排查Java问题
总的来说,使用Linux命令来排查Java问题,需要一定的实践经验和理论知识。然而,只要我们愿意花时间深入了解这些工具,我们就能够熟练地使用它们来分析和解决问题。此外,这些工具只是帮助我们定位问题,真正解决问题需要我们对Java和JVM有深入的理解,并能够读懂和分析代码。
46 13
|
22天前
|
Linux基础:文件和目录类命令分析。
总的来说,这些基础命令,像是Linux中藏匿的小矮人,每一次我们使用他们,他们就把我们的指令准确的传递给Linux,让我们的指令变为现实。所以,现在就开始你的Linux之旅,挥动你的命令之剑,探索这个充满神秘而又奇妙的世界吧!
69 19
|
1月前
|
Linux 常用文件查看命令
`cat` 命令用于连接文件并打印到标准输出,适用于快速查看和合并文本文件内容。常用示例包括:`cat file1.txt` 查看单个文件,`cat file1.txt file2.txt` 合并多个文件,`cat > filename` 创建新文件,`cat >> filename` 追加内容。`more` 和 `less` 命令用于分页查看文件,`tail` 命令则用于查看文件末尾内容,支持实时追踪日志更新,如 `tail -f file.log`。
57 5
Linux 常用文件查看命令
|
19天前
|
linux常用命令详细说明以及案例
本文介绍了Linux中几个常用的命令及其用法,包括:`ls`(列出目录内容)、`cd`(切换目录)、`mkdir`(创建目录)、`rm -p`(删除目录及内容)和`mv`(移动或重命名文件/目录)。每个命令都配有详细说明、语法格式、常见选项及实用案例,帮助用户更好地理解和使用这些基础命令。内容源自[linux常用命令详细说明以及案例](https://linux.ciilii.com/show/news-285.html)。
Linux 内核源码分析---proc 文件系统
`proc`文件系统是Linux内核中一个灵活而强大的工具,提供了一个与内核数据结构交互的接口。通过本文的分析,我们深入探讨了 `proc`文件系统的实现原理,包括其初始化、文件的创建与操作、动态内容生成等方面。通过对这些内容的理解,开发者可以更好地利用 `proc`文件系统来监控和调试内核,同时也为系统管理提供了便利的工具。
66 16
|
1月前
|
Linux od命令
本文详细介绍了Linux中的 `od`命令,包括其基本语法、常用选项和示例。通过这些内容,你可以灵活地使用 `od`命令查看文件内容,提高分析和调试效率。确保理解每一个选项和示例的实现细节,应用到实际工作中时能有效地处理各种文件查看需求。
64 19
|
11月前
|
《Linux 简易速速上手小册》第6章: 磁盘管理与文件系统(2024 最新版)
《Linux 简易速速上手小册》第6章: 磁盘管理与文件系统(2024 最新版)
95 1
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等