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

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

3天内不再提示

这款命令行工具可以在Linux文件目录快速自动跳转

dyquk4xk2p3d 来源:良许Linux 2023-03-30 10:07 次阅读

Linux 终端下,跳转目录有时觉得会很麻烦,需要敲很长的命令路径才能进入指定的目录。

autojump 是提供了一种快速进行文件目录自动跳转的命令行工具。它会将命令行最常用的目录记录保存到数据库里,所以在使用它时,必须先访问目录,然后才能跳转到所要进入的目录。

它会根据访问的目录频次添加不同的权重,访问的目录越频繁,权重越高,排名就越靠前,跳转的命令就越简洁。

autojump 支持在 Linux、OS X、Windows、BSD 平台进行安装,其安装方式支持源码、Debian 和衍生工具、ArchLinux / Gentoo / openSUSE / RedHat及其衍生工具、Homebrew / MacPorts 方式安装。

安装 autojump

安装 autojump 的前提,需要准备 Python v2.6+ 或 Python v3.3+ 的环境。

我这是 CentOS 7.5 的环境,默认是安装过 Python2,如果您的操作系统没有 Python 环境,我这为大家准备了一个安装 Python3 的脚本,只需将 2 个 tar 包和脚本放置同一个目录下,执行脚本即可安装。

shpython3_install.sh

从 GitHub 将下载的 autojump 压缩包进行解压

unzipautojump-master.zip

然后可安装或卸载

cdautojump-master
./install.py或./uninstall.py

由于 Linux 下 Shell 启动会自动读取~/.bashrc文件,执行安装过程中,出现如下问题时,需手动添加如下行内容至~/.bashrc文件中。

vim~/.bashrc

[[-s/root/.autojump/etc/profile.d/autojump.sh]]&&source/root/.autojump/etc/profile.d/autojump.sh

添加完毕后,执行命令:source ~/.bashrc,生效即可。

安装完成后,执行命令:autojump --version或j -v,查看 autojump 版本。

#autojump--version
autojumpv22.5.3

使用 autojump

autojump 的使用方法:

autojump[-h][-aDIRECTORY][-i[WEIGHT]][-d[WEIGHT]][--complete]
[--purge][-s][-v]
[DIRECTORY[DIRECTORY...]]

autojump 的可选参数

-h:显示帮助信息并退出

-a DIRECTORY:添加路径

-i [WEIGHT]:增加当前目录权重

-d [WEIGHT]:降低当前目录权重

--complete:用于 Tab 补全

--purge:删除数据库中不存在的路径

-s:显示数据库条目及其权重

-v:显示版本信息

j 是 autojump 命令的缩写,任何可以用 autojump 的地方都可以以j命令替代。

用法 1:跳转到包含 autojump 字符串的目录

#jautojump
/root/autojump-master

用法 2:当某一个字符串的目录下包含多个不同名称的子目录时,无需按第一种输入字符串的方式进行跳转目录,可通过jc 子目录名称可跳转至子目录

#jcbin
/root/autojump-master/bin

用法 3:打开包含某个字符串目录的文件管理器

#jomusic

用法 4:打开包含某个字符串目录的子目录文件管理器

#jcoimages

用法 3 和 用法 4,是可以从命令行打开一个文件管理器,而不是跳转到一个目录。这个前提必须是安装有 Linux 桌面环境,例如:GNOME、KDE 等。若是通过第三方终端连接工具连的服务器,使用时会为不可用。

用法 5:若有两个目录包含相同字符串

20.0:/opt/one/first
22.4:/opt/two/first

那么j fi会跳转到权重最大的目录

#jfi
/opt/two/first

也可以通过j o fi跳转到权重相对较小的目录

#jofi
/opt/one/first

当如果忘记目录的全名或手误输错,可按 Tab 键自动识别补全,同时也会自动添加下划线。

#jptython__1__/opt/python
/opt/python

在跳转过程中出现不能跳转的情况,需要在安装好 autojump 之后确认是否访问过指定的目录或执行命令:j -s查看数据库中历史访问过的目录。

同时,j -s也是可以用来查看权重。当权重越高,说明目录使用的越频繁。

查看每个文件夹的权重和全部文件夹计算得出的总权重的统计数据,文件夹的权重代表在这个文件夹中所花的总时间,文件夹权重为该列表中目录的数字。

#j-s
10.0:/mnt/Packages
14.1:/opt/two
14.1:/opt/one
22.4:/opt/python
24.5:/root/.local/share/autojump
24.5:/opt
24.5:/opt/two/first
26.5:/opt/one/first
28.3:/mnt
41.2:/root/autojump-master
43.6:/root/autojump-master/bin
________________________________________

273:totalweight
11:numberofentries
22.36:currentdirectoryweight

data:/root/.local/share/autojump/autojump.txt

autojump 存储运行日志及错误日志存放至~/.local/share/autojump/,切记不要重写这些文件,否则将会失去所有的统计状态结果。

#ls-l~/.local/share/autojump/
-rw-------.1rootroot3053月1616:14autojump.txt
-rw-------.1rootroot273月1611:16autojump.txt.bak

运用了 autojump 上述使用方法之外,目前有发现如下三点:

1、autojump 只能跳转到已经用cd进入过的目录,无法跳转到没有用cd进入过的目录。即使用 cd 进入过一个特定的目录才会被记录到 autojump 的数据库中,才可以使用 autojump 进行跳转。

2、自动跳转不支持-开头的目录。

3、在 BASH Shell 中,autojump 是通过修改$PROMPT_COMMAND环境变量跟踪目录的行为,所以建议不要重写$PROMPT_COMMAND环境变量。若需要添加其他的命令到现$PROMPT_COMMAND环境变量中,需添加到$PROMPT_COMMAND环境变量的最后。

传送门:https://github.com/wting/autojump

审核编辑:汤梓红

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

    关注

    87

    文章

    11225

    浏览量

    208906
  • 文件
    +关注

    关注

    1

    文章

    561

    浏览量

    24695
  • python
    +关注

    关注

    56

    文章

    4782

    浏览量

    84449
  • 命令行
    +关注

    关注

    0

    文章

    77

    浏览量

    10380
  • 跳转
    +关注

    关注

    0

    文章

    5

    浏览量

    5940

原文标题:太强了!这款命令行工具可以在 Linux 文件目录快速自动跳转

文章出处:【微信号:良许Linux,微信公众号:良许Linux】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    STM32实现命令行

    工作中的开发环境都是基于linux命令行交互,作为命令行的重度使用者,玩单片机也要使用命令行工具,百度了一些
    发表于 12-09 11:32 2278次阅读

    Linux命令行工具

    Linux 新手往往对命令行心存畏惧。部分原因是因为需要记忆大量的命令,毕竟掌握命令是高效使用命令行的前提不幸的是,学习这些
    发表于 07-25 08:10

    linux命令行下载工具

    wget是linux下常用的命令行下载工具,是Linux用户是必不可少的工具,尤其对于网络管理员,经常要下载一些软件。而tget是一个简单的
    发表于 07-25 07:02

    维基链的命令行是如何高效快速的对维基链节点进行操作的

    的,WaykiChain也为开发者提供了相应的工具,开发者通过此命令行工具可以高效快速的对维基链节点进行操作。
    发表于 06-24 11:15 1048次阅读

    Linux 命令行教程好书推荐

    LinuxCommand.org 创始人:William Shotts 之手。 很早以前,该书便基于 CC 3.0 许可免费对外界开放阅读,发展到今天,已帮助无数开发者习得并掌握 Linux 命令行
    的头像 发表于 02-14 09:25 1449次阅读

    Linux命令行与shell脚本编写

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

    如何使用命令行Linux中查找文件

    对于Linux新用户来说,Linux中查找文件可能有点困难。但是,适当的指导下,任何人都可以
    的头像 发表于 03-23 14:55 4193次阅读

    Linux文件目录快速自动跳转命令

    那些主要通过控制台/终端使用 Linux 命令行Linux 用户应该感受到了 Linux 的真正力量。然而,对于新手来说,导航 Linux
    的头像 发表于 05-06 10:16 944次阅读
    <b class='flag-5'>Linux</b><b class='flag-5'>文件</b><b class='flag-5'>目录</b><b class='flag-5'>快速</b><b class='flag-5'>自动</b><b class='flag-5'>跳转</b><b class='flag-5'>命令</b>

    Linux神器:一键直达目录直接起飞

    Autojump是一个开源的命令行工具,用于快速跳转目录文件
    的头像 发表于 06-06 09:31 483次阅读
    <b class='flag-5'>Linux</b>神器:一键直达<b class='flag-5'>目录</b>直接起飞

    恒讯科技分析:如何在Linux上使用rm命令删除文件目录

    本指南展示了如何在Linux中使用rm命令行删除文件目录和其他内容?
    的头像 发表于 06-09 17:02 1154次阅读

    linux命令行与shell编程实战

    Linux命令行与Shell编程实战主要涉及以下内容: Linux命令行基础:学习Linux命令行
    的头像 发表于 11-08 10:57 734次阅读

    linux虚拟机怎么调出命令行

    Linux虚拟机中调出命令行界面,可以通过以下步骤实现: 打开虚拟机,进入到Linux系统。
    的头像 发表于 11-08 11:28 2996次阅读

    linux切换到命令行模式

    Linux中,可以通过以下步骤切换到命令行模式: 打开终端。可以应用菜单中找到终端或
    的头像 发表于 11-13 16:47 1719次阅读

    linux命令行运行步骤

    运行Linux命令行涉及以下步骤: 打开终端 Linux系统中,打开命令行界面的方式有多种,最常见的是打开终端应用程序。
    的头像 发表于 11-17 10:18 754次阅读

    总结linux命令行的主要用法

    Linux命令行是一种Linux操作系统中通过文本界面来执行指令和管理系统的方式。它提供了丰富的功能和灵活性,帮助用户完成各种任务。本文将详细介绍
    的头像 发表于 11-17 10:19 618次阅读