网站搜索

Fasd - 提供快速访问文件和目录的命令行工具


Fasd(发音为“fast”)是命令行生产力增强器,它是一个独立的 POSIX shell 脚本,可以快速、更高效地访问文件和目录。

它的灵感来自于 autojump 等工具,并且名称 fasd 是根据默认建议的别名创建的:

  • f(文件)
  • a(文件/目录)
  • s(显示/搜索/选择)
  • d(目录)

它已在以下 shell 上进行了测试:bash、zsh、mksh、pdksh、dash、busybox ash、FreeBSD 9 /bin/sh 和 OpenBSD /bin/sh。它会跟踪您访问过的文件和目录,以便您可以在命令行中快速引用它们。

在本文中,我们将通过几个示例在 Linux 中展示如何安装和使用 fasd

fasd 是如何工作的?

Fasd 只是按照“频率”(这个词最初由 Mozilla 发明并在 Firefox 中使用,从此处了解更多信息)对文件和目录进行排名,它是“频率”单词的组合和“新近”。

如果您主要通过终端使用 shell 来导航和启动应用程序,那么 fasd 可以帮助您更高效地完成操作。无论您位于哪个目录,它都可以帮助您打开文件。

通过简单的按键字符串,fasd 可以找到“常用”文件或目录,并使用您指定的命令将其打开。

如何在 Linux 系统中安装和使用 Fasd

Fasd 可以在 Ubuntu 及其衍生产品上使用 PPA 安装。

sudo add-apt-repository ppa:aacebedo/fasd
sudo apt-get update
sudo apt-get install fasd

在其他 Linux 发行版上,您可以从源代码安装它,如图所示。

git clone https://github.com/clvv/fasd.git
cd fasd/
sudo make install

安装 Fasd 后,将以下行添加到 ~/.bashrc 中以启用它:

eval "$(fasd --init auto)"

然后像这样获取文件。

source ~/.bashrc

Fasd 附带以下有用的默认别名:

alias a='fasd -a'        # any
alias s='fasd -si'       # show / search / select
alias d='fasd -d'        # directory
alias f='fasd -f'        # file
alias sd='fasd -sid'     # interactive directory selection
alias sf='fasd -sif'     # interactive file selection
alias z='fasd_cd -d'     # cd, same functionality as j in autojump
alias zz='fasd_cd -d -i' # cd with interactive selection

让我们看一些使用示例;以下示例将列出所有“常用”文件和目录:

a

要快速搜索您之前访问过的文件或目录,请使用 s 别名:

s

要查看您以前使用过的所有带有字母“vim”的文件,您可以使用 f 别名,如下所示:

f vim

使用 zz 别名快速交互地 cd 到之前访问过的目录。只需从第一个字段中选择目录号码(下面屏幕截图中的 1-24):

zz

您可以在 ~/.bashrc 中添加自己的别名,以充分利用 fasd 的强大功能,如下例所示:

alias v='f -e vim'   # quick opening files with vim
alias m='f -e vlc'   # quick opening files with vlc player

然后运行以下命令来获取该文件:

source  ~/.bashrc

要在 vim 中快速打开名为 test.sh 的文件,您可以输入:

v test.sh

我们将介绍另一个示例,您可以在其中将 Fasd 别名与其他命令一起使用:

f test
cp  `f test` ~/Desktop
ls -l ~/Desktop/test.sh

对于 bash 用户,请调用 _fasd_bash_hook_cmd_complete 来完成补全工作。例如:

_fasd_bash_hook_cmd_complete  v  m  j  o

欲了解更多信息,请输入:

man fasd

有关其他自定义和使用示例,请查看 Fasd Github 存储库:https://github.com/clvv/fasd/

就这样!在本文中,我们向您展示了如何在 Linux 中安装和使用 fasd。请通过下面的反馈部分与我们分享您遇到的类似工具的信息,以及任何其他想法。