0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

命令行高级用户的必备:autojump

马哥Linux运维 2017-12-12 09:20 次阅读

在命令行中切换目录是最常用的操作,不过很少有比一遍又一遍重复“cd ls cd ls cd ls ……”更令人沮丧的事情了。如果你不是百分百确定你想要进入的下一个目录的名字,那么你不得不使用ls来确认,然后使用cd来进入你想要进的那一个。所幸的是,现在大量的终端和shell语言提供了强大的自动补全功能来处理该问题。但是,你仍然需要一直疯狂地敲击TAB键来干这事。如果你和我一样懒惰,你一定会对autojump感到惊喜。

autojump是一个命令行工具,它允许你可以直接跳转到你喜爱的目录,而不用管你现在身在何处。

Linux上安装autojump

在Ubuntu或Debian上安装autojump:

$sudo apt-get install autojump

要在CentOS或Fedora上安装autojump,请使用yum命令。在CentOS上,你需要先启用EPEL仓库才行。

$sudo yum install autojump

在Archlinux上安装autojump:

$sudo pacman -Sautojump

如果你找不到适合你的版本的包,你可以从GitHub上下载源码包来编译。

autojump的基本用法

autojump的工作方式很简单:它会在你每次启动命令时记录你当前位置,并把它添加进它自身的数据库中。这样,某些目录比其它一些目录添加的次数多,这些目录一般就代表你最重要的目录,而它们的“权重”也会增大。

现在不管你在哪个目录,你都可以使用下面的语法来直接跳转到这些目录:

autojump[目录的名字或名字的一部分]

注意,你不需要输入完整的名称,因为autojump会检索它的数据库,并返回最可能的结果。

例如,假定我们正在下面的目录结构中工作。

那么下面的命令将直接让你跳到/root/home/doc下,不管你当前位置在哪里。

$autojump do

如果你也很讨厌打字,那么我推荐你为autojump起个别名,或者使用默认的别名。

$j[目录的名字或名字的一部分]

另外一个引人注目的功能是,autojump支持zsh和自动补完。如果你不确认哪里是不是你要跳转的地方,敲击TAB键就会列出完整路径。

还是同样的例子,输入:

$autojumpd

然后敲击tab键,将会返回/root/home/doc或者/root/home/ddl。

最后,对于高级用户,你可以访问目录数据库,并修改它的内容。可以使用下面的命令来手动添加一个目录:

$autojump -a[目录]

如果你突然想要把当前目录变成你的最爱和使用最频繁的文件夹,你可以在该目录通过命令的参数 i 来手工增加它的权重

$autojump -i[权重]

这将使得该目录更可能被选择跳转。相反的例子是在该目录使用参数 d 来减少权重:

$autojump -d[权重]

要跟踪所有这些改变,输入:

$autojump -s

这会显示数据库中的统计数据。而以下:

$autojump --purge

命令将会把不再存在的目录从数据库中移除。

简言之,autojump将会受到所有命令行高级用户的欢迎。不管你是在ssh进一台服务器,还是仅仅想要追随复古潮流,敲更少的键来减少导航时间总是件好事。如果你真的热衷于此类工具,你也肯定也想看看Fasd,它应该会给你一个惊喜——我们下次再介绍它。

你觉得autojump怎么样?你会经常用它么?发表一下你的评论吧。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11216

    浏览量

    208763

原文标题:自动补全不算什么,一键直达目录才是终极神器

文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    cmd网络经典命令行

    cmd网络经典命令行:
    发表于 06-11 15:17 36次下载
    cmd网络经典<b class='flag-5'>命令行</b>

    C语言入门教程-命令行参数

    命令行参数 在C中,获取用户输入的命令行参数是很方便的。程序的主函数会接受一个argv参数。有许多高级的库函数都会用到argv结构,所以了解此结构对一个C程序员来
    发表于 07-29 14:22 2600次阅读

    caxa命令行中的应用

    caxa命令行中的应用 命令行对于大多用户来说往往只是输入数据的作用,但是其中的奥妙还有很多,下面就给大家
    发表于 10-18 18:18 2276次阅读

    博达环网配置命令行

    博达工业交换要环网配置命令行
    发表于 12-27 16:24 0次下载

    最全面StoneOS命令行用户手册

    最全面StoneOS命令行用户手册
    发表于 09-08 09:34 13次下载
    最全面StoneOS<b class='flag-5'>命令行</b><b class='flag-5'>用户</b>手册

    CMD的命令行高级教程

    CMD的命令行高级教程
    发表于 10-24 08:31 30次下载
    CMD的<b class='flag-5'>命令行</b><b class='flag-5'>高级</b>教程

    Shell命令行解释器简介

    Shell 是一个命令行解释器,Shell 为用户提供了与设备进行命令行交互的方式,用户通过串口、以太网、无线等方式将命令传输给具有 She
    的头像 发表于 08-19 17:20 3164次阅读

    Linux命令行与shell脚本编写

    Linux命令行与shell脚本编写
    发表于 01-11 16:50 4次下载

    OneCommand命令行接口用户手册11.0和11.1

    电子发烧友网站提供《OneCommand命令行接口用户手册11.0和11.1.pdf》资料免费下载
    发表于 08-04 15:00 0次下载
    OneCommand<b class='flag-5'>命令行</b>接口<b class='flag-5'>用户</b>手册11.0和11.1

    Emulex OneCommand命令行接口用户指南 12.2版

    电子发烧友网站提供《Emulex OneCommand命令行接口用户指南 12.2版.pdf》资料免费下载
    发表于 08-11 11:13 0次下载
    Emulex OneCommand<b class='flag-5'>命令行</b>接口<b class='flag-5'>用户</b>指南 12.2版

    OneCommand Manager命令行界面用户手册

    电子发烧友网站提供《OneCommand Manager命令行界面用户手册.pdf》资料免费下载
    发表于 08-22 11:09 0次下载
    OneCommand Manager<b class='flag-5'>命令行</b>界面<b class='flag-5'>用户</b>手册

    linux切换到命令行模式

    在Linux中,可以通过以下步骤切换到命令行模式: 打开终端。可以在应用菜单中找到终端或命令行终端。 在终端中输入命令“exit”或“logout”,然后按回车键。 系统会提示您输入管理员密码。输入
    的头像 发表于 11-13 16:47 1702次阅读

    linux命令行运行步骤

    现光标右边出现了一个类似于“ ”或“#”的字符,这就是命令行提示符。在大多数Linux发行版中,普通用户的提示符是“ ”,而管理员或root用户的提示符是“#”。 查找可用的命令 Li
    的头像 发表于 11-17 10:18 740次阅读

    eclipse怎么使用命令行

    命令行中使用Eclipse来完成一些特定的任务。本文将详细介绍如何在命令行中使用Eclipse。 首先,我们需要确保已经正确安装了JDK(Java Development Kit)和Eclipse
    的头像 发表于 12-06 11:26 2374次阅读

    idea如何输入命令行参数

    。 在大多数编程语言中,都提供了内置的机制来处理命令行参数,以便程序可以根据用户的需求进行不同的操作。下面我们将逐步介绍如何在常见的编程语言中输入命令行参数。 一、C/C++语言: 在C/C++中,主函数(main)的原型为:
    的头像 发表于 12-06 15:01 1050次阅读