终端下的资源管理器 -- ranger 用法详解
2021-05-05 12:09:17 最后更新: 2021-06-11 17:53:59 访问数量:450
2021-05-05 12:09:17 最后更新: 2021-06-11 17:53:59 访问数量:450
文件管理是操作系统十分重要的一项能力,拥有 GUI 的操作系统中,通常都会有图形化的文件管理工具,供我们管理我们的文件,例如 windows 上的资源管理器,MacOS 中的“访达”,Android 下的 ES 文件浏览器,linux 下各具特色的开源文件管理器。
这些 GUI 下的文件管理器侧重点各有不同,但如果没有了 GUI,我们是否还有能够用一款好用的命令行工具来方便的管理目录和文件呢?本文要介绍的 ranger 就解决了这个问题。
下面就是一张 ranger 与 windows 资源管理器对比的示例图:
ranger 支持以下功能:
你可以通过包管理工具进行安装,例如:
sudo apt install ranger
也可以通过 python 的 pip 工具进行安装:
pip install ranger-fm
ranger 的用法很简单,只要通过 ranger 命令即可启动:
ranger [–version] [–help] [–debug] [–clean] [–confdir=directory] [–copy-config=which] [–choosefile=target] [–choosefiles=target] [–choosedir=target] [–selectfile=filepath] [–list-unused-Keys] [–list-tagged-files=tag] [–profile] [–cmd=command] [path]
通过 man 命令可以看到非常详细的 ranger 使用手册。
ranger 命令包含下列选项:
选项 | 说明 |
`-d`, `--debug` | 调试模式:当发生错误时,Ranger 会退出并打印回溯。 |
`-c`, `--clean` | 干净模式:Ranger 不会读取或者创造任何配置文件,不会在系统内留下任何痕迹。 |
`-r dir`, `--confdir=dir` | 将 Ranger 的配置文件夹从 `~/.config/ranger` 改为 `dir`。 |
`--copy-config=file` | 复制一份默认的配置文件到 Ranger 的配置文件夹内,已存在的不会被盖写。`file` 包括 `all`、`commands`、`commands_full`、`rc`、`rifle` 和 `scope`。 |
`--choosefile=targetfile` | 允许你使用 Ranger 选择一个 `targetfile` 文件,当你用在 Ranger 中用 `r` 命令打开一个文件时,Ranger 会退出,并将这个文件的绝对路径写入 `targetfile` 文件。 |
`--choosefiles=targetfile` | 可以选择多个文件的绝对路径写入 `targetfile` 文件,每一个占一行,按字母升序排列。 |
`--choosedir=targetfile` | 将退出 Ranger 后的最后一个访问过的文件的绝对路径写入 `targetfile` 文件。 |
`--selectfile=targetfile` | Ranger 的光标跳转到 `targetfile` 文件。 |
`--list-unused-Keys` | 列出在浏览器环境中未绑定任何动作的按键 |
`--list-tagged-files=tag` | 列出用给定 `tag` 标记的所有文件。注意:标签是单个字符,默认标记为 `*`。 |
`--profile` | 退出时打印 CPU 使用情况的统计信息。 |
`--cmd=command` | 在配置文件读取完成后执行 `command` 命令。多次使用此选项运行多个命令。 |
`--version` | 打印版本信息并退出 |
`-h, --help` | 打印此选项列表并退出 |
ranger 之所以非常容易上手,就是因为他的所有快捷键都与 vim 中几乎没有什么差别,所以即便是你第一次安装,你也能使用得得心应手。
这些基本操作与 vim 中几乎一模一样:
更加高级的跳转操作是通过 g + 一个字母实现的,在 ranger 中,只要按下 g,就可以看到弹出窗口中的说明:
如图所示,gL
相当于 cd -r
,也就是跳转到符号链接的原始位置。
而如果当前路径是一个符号链接指向的路径,gl
则相当于 cd -r .
,也就是跳转到当前路径的原始位置。
ranger 是支持多个 tab 进行操作的:
gn
– 创建新 tabgt
– 在 tab 上右移(TAB)gT
– 在 tab 上左移(SHIFT + TAB)gc
– 关闭当前 tabuq
– 重新打开上次关闭的标签页
ranger 支持添加书签:
其他的高级操作也可以像跳转一样,按下一个按键然后阅读弹出窗口中的说明,例如:
此外,还有一些额外的操作:
上面介绍了 ranger 的基本用法,事实上,ranger 还支持非常强大的命令和插件系统,可以参考 github 上的官方文档进行配置:
https://github.com/ranger/ranger
unix 系统中,还有其他一些好用且功能强大的终端文件管理器:
这些终端下的文件管理器占用资源少,功能却十分强大,使用起来方便快捷,只要善于加以利用,就可以让你的工作效率大为提升。