在终端中自动完成最近的目录

在终端中自动完成最近的目录

假设我过去几周一直在做同一个项目,每天我都喜欢从一个新的终端开始。这意味着我总是从 开始cd /path/to/project

在 Mac 上使用 iTerm2 时,我非常喜欢显示我最常(和最近)使用的目录的选项。描述这里在‘最近的目录’下。

快速击键后会出现一个弹出窗口,让我在输入后完成目录路径cd

Ubuntu 中有什么可以匹配这种行为吗?

答案1

有一些选择。

1. 模糊查找器

模糊查找器实用程序可以满足您的需求。模糊查找器位于 Ubuntu 存储库中(至少从 19.04 开始),可以使用以下方式安装

sudo apt get install fzf

或者,也可以从它的 github 页面

安装完成后,在提示符下按Alt+ c。您可以立即开始在您所在的文件夹下输入文件夹的名称。当名称出现时,选择它并按Enter进入cd

在键入命令时,Ctrl+T允许您在命令行上搜索并输入任何文件夹或文件的名称。

2. 你的 bash 历史记录

  • 输入Ctrl+ r:这将开始在历史记录中反向搜索
  • 类型pro(即您的项目的实际名称):很可能,您最近的命令cd /path/to/project已经弹出。
  • 按下Enter执行命令

这样可以减少您四、五次按键的次数。如果弹出另一个匹配(较新)的命令,请再次按 Ctrl+r继续反向搜索。

此外,在+cd之后输入也会列出上次使用的 cd 命令。继续按 +可循环显示之前的 cd 命令。但是,您的文件夹名称更独特,因此更容易被找到。CtrlrCtrlr

3. Rofi 或 dmenu

罗菲或者菜单,您可以轻松创建动态表示最近文件夹的小菜单。rofi(或 dmenu)将文本文件作为菜单项的输入。该命令的输出history | grep cd可以通过 rofi 显示给您,如下所示:

history | grep cd | rofi -dmenu

将其放在一个小脚本中,并为其绑定一个热键。热键现在将显示您最近的所有cd命令。输入目录中的几个字母以缩小列表。

4. 其他选择

  • 制作别名对于你知道你将要重复的命令
  • 制作小脚本运行你知道会重复的命令

相关内容