ranger 是一个以Python编写,绑定vi/vim键的终端文件管理器
# archlinux系
sudo pacman -S ranger
# redhat系
sudo yum install -y ranger
# Debian系
sudo apt-get install -y ranger
--version #显示程序的版本号并退出
-h,--help #显示此帮助消息并退出
-d,--debug #激活调试模式,出错时退出并打印错误
-c,--clean #不要读取或创建任何配置文件,不会在系统留下痕迹
--logfile=file #要使用的日志文件,'-'代表stderr
--cachedir=dir #更改缓存目录(~/.cache/ranger)
-r dir,--confdir=dir #更改配置目录(~/.config/ranger)
--datadir=dir #更改数据目录(~/.local/share/ranger)
--copy-config=which #将默认配置复制到用户配置目录,可用值:all, rc, rifle, commands,commands_full, scope
--choosefile=OUTFILE #使Ranger像文件选择器一样工作,打开文件时,它将退出并将所选文件的名称写入OUTFILE。
--choosefiles=OUTFILE #使Ranger就像一次选择多个文件一样,打开文件时,它将退出并将所有选定文件的名称写入OUTFILE。
--choosedir=OUTFILE #使Ranger像目录选择器一样工作,退出Ranger时,它将最后访问的目录的名称写入OUTFILE
--selectfile=filepath #打开带有选定文件的游侠
--show-only-dirs #仅显示目录,不显示文件或链接
--list-unused-keys #出未绑定到任何动作的通用键
--list-tagged-files=tag #列出所有使用给定标签标记的文件,默认:*
--profile #输出退出时CPU使用率的统计信息
--cmd=COMMAND #读取配置后执行COMMAND,多次使用此选项可运行多个命令
ranger --copy-config=all
# 该命令自动将配置文件复制到~/.config/ranger/,作为用户配置文件
相关配置文件
~/.config/ranger/rc.conf
主配置文件,选项设置和快捷键~/.config/ranger/scope.sh
设置可预览的文件类型~/.config/ranger/rifle.conf
指定不同类型文件的默认打开程序~/.config/ranger/commands.py
能通过:
执行的命令~/.config/ranger/commands_full.py
默认的控制台命令~/.config/ranger/bookmarks
书签列表,可在该文件中批量添加书签~/.config/ranger/tagged
标记文件的绝对路径~/.config/ranger/history
控制台命令的历史记录,默认50条相关文件夹
~/.config/ranger/colorschemes/
颜色主题文件夹~/.config/ranger/plugins/
插件文件夹文件scope.sh中, 在externsions部分注释掉不想预览的文件类型, 在那行上面添加"#"注释掉即可。ranger在预览 rar
等压缩包时会运行得比较慢
?
或 F1
指令
m
打开man帮助页k
显示键位绑定c
显示可用ranger的命令s
显示配置q
退出帮助按键 | 说明 |
---|---|
k 或 <UP> j 或 <DOWN> h 或 <LEFI> l 或 <RIGHT> 或 <ENTER> |
上 下 左(上一级目录) 右(进入目录,打开文件) |
K 或 ^u J 或 ^d |
上翻半页 下翻半页 |
H L |
上一历史记录 下一历史记录 |
<PAGEUP> 或 ^b <PAGEDOWN> 或 ^f |
上翻一页 下翻一页 |
gg 或 <HOME> G 或 <END> |
跳到顶端 跳到底端 |
[ ] |
父目录上移 父目录下移 |
g + 对应字母 跳转相应目录 |
gh :~ go home g? :/usr/share/doc/ranger gR :/usr/lib/python2.7/dist-packages/ranger gd :/dev ge :/etc gm :/media gM :/mnt go :/opt gs :/srv gu :/usr gv :/var gr 或 g/ :/ |
gl 或gL |
若当前项为符号链接,逃到其原始位置 |
cd |
跳转到目录,同 :cd |
f 或 / |
搜索查找 |
z + 对应字母 设置相关属性 |
h 或 ^h 显示/隐藏文件 p 开/关文件预览功能 P 开/关目录预览功能 c 当文件预览不可见时,是否应该折叠右栏,使主栏扩大 d 文件夹是否在文件前面 I 每次按键后是否刷新输入 m 是否能用鼠标。如果能,则左键光标移动,右键打开,滚轮上下 s 排序是否区分大小写 u 是否自动更新状态栏上显示的该目录所有文件大小的值 v 是否启用预览脚本 i 是否预览图片 |
按键 | 说明 |
---|---|
<SPACE> |
选择文件并跳到下一项 |
v |
反选 |
V |
进入可视模式,结合移动键进行选择,配合可 gg , G 使用 |
uv |
取消选择 |
^v |
从某个位置开始选择 |
按键 | 说明 |
---|---|
<INSERT> |
新建文件,同 :touch |
<F7> |
新建文件夹,同 :mkdir |
按键 | 说明 |
---|---|
dD 或 <F8> |
删除条目(文件或文件夹) , 同 :delete |
DD |
将条目移动到回收站 |
按键 | 说明 |
---|---|
i 或 <F3> |
查看当前文本文件内容 |
E 或 <F4> |
调用默认编辑器编辑文件 |
按键 | 说明 |
---|---|
cw |
重命名 |
I |
修改当前命名,光标在最前 |
a |
修改当前命名,光标在后缀前 |
A |
修改当前命名,光标在最后 |
批量选择文件后, 键入命令 :bulkname
会打开编辑器, 将列出文件名编辑后保存退出,确认编辑, 然后就批量改名了, 如果想取消批量改名, 在确认时把内容删除即
按键 | 说明 |
---|---|
dd 或 <F6> |
移动 |
yy 或 <F5> |
复制 |
da 、ya |
添加文件到移动、复制队列 |
dr 、yr |
将文件从移动、复制队列移除 |
dt 、yt |
切换文件是否在移动、复制队列中 |
dk 、yk |
将当前文件与上一个文件添加到移动、复制队列 |
dj 、yj |
将当前文件与下一个文件添加到移动、复制队列 |
dgg 、ygg |
当前位置到顶端的所有文件添加到移动、复制队列 |
dG 、yG |
当前位置到末尾的所有文件添加到移动、复制队列 |
ud 、uy |
取消移动、复制 |
按键 | 说明 |
---|---|
pp |
粘贴 |
pP |
若有同名条目自动命名后粘贴 |
po |
若有同名条目则覆盖原有条目粘贴 |
pl |
粘贴为符号链接,不在状态栏显示条目的相对路径 |
pl |
粘贴为符号路径(相对路径) ,在状态栏显示条目的相对路径 |
phl |
粘贴为硬链接 |
pht |
粘贴为硬链接的子目录 |
按键 | 说明 |
---|---|
<a/u/g/o>+<r/w/x/1~7> |
增加权限 |
<a/u/g/o>-<r/w/x/1~7> |
取消权限 |
<a/u/g/o>-<r/w/x/1~7> |
指定权限 |
a
ALLu
所有者g
所属组o
其他r(1)
读w(2)
写x(4)
执行按键 | 说明 |
---|---|
l 或 <ENTER> |
用默认程序打开文件,ranger 不知道文件的打开程序时,会提示 :open_with 用于指定程序 |
r |
指定程序打开文件同 :open_with 命令 |
S |
在当前目录下打开shell |
:open_with
:open_with <程序> <模式> <选项>
<程序>
指定程序,~/.config/ranger/apps.py
里面的定义了相应程序打开相应的文件,若没有该文件实用命令 ranger --copy-config apps
生成,CustomApplications
中每一个以 app_
开头的函数会被命令 :open_with
用到。
<模式>
0
窗口模式 , 1
全屏模式
<选项>
指定方式调用程序
s
静默模式,任何输出将被丢弃d
分离程序(在后台运行)p
将输入重定向到 pagerw
当程序执行完成时需要用户回车确认大写 <选项>
有相反的作用,如一程序默认就在后台运行,那么可以使用 :open_with D
来防止其在后台运行
按键 | 说明 |
---|---|
t |
标记/取消标记条目,标记后光标下移,默认 * |
ut |
取消标记 |
" + 任意字符 |
使用 任意字符 标记/取消标记 |
按键 | 说明 |
---|---|
/ |
打开搜索框,输入搜索内容后回车开始搜索,同 :search |
f |
向下查找并打开目标,同 :find |
zf |
过滤器,显示符合条件的条目,区分大小写,^r 取消过滤 |
n 、N |
查找下、上一个搜索结果 |
c + 对应字母 根据属性遍历 |
a 最后访问时间 (atime) c 状态(权限属性等)变更时间(ctime) m 最后修改内容时间(mtime) i MIME类型(mimetype) s 文件大小(size) t 标签(tag) |
o +对应字母 根据属性排序(小写字母正向,大写字母反向) |
a/A 最后访问时间 (atime) b/B 文件名(basename)c/C 状态(权限属性等)变更时间(ctime) e/E 扩展名(extension) m/M 最后修改内容时间(mtime) n/N 自然排序(A1<A2<A10)(natural) s/S 文件大小(size) t/T 文件类型(type) r 反向(Ranger 默认升序) |
按键 | 说明 |
---|---|
m ,\``, '` |
显示书签 |
m + 任意字符 |
新建书签 |
\`` 或 '+ 任意字符` |
打开书签 |
um + 任意字符 |
删除书签 |
按键 | 说明 |
---|---|
gn 或 ^n |
新建标签 |
gt 或 <TAB> 或 ^i |
下一标签 |
gT 或 <Shift-TAB> |
上一标签 |
<Alt-n> |
打开指定标签,n 为 1~9 的标签号,若标签不存在则新建 |
<Alt-Right> / <Alt-Left> |
切换标签 |
按键 | 说明 |
---|---|
Mf |
filename 模式 (文件名+文件大小,文件夹显示文件数) |
Mi |
fileinfo 模式 (文件名,媒体文件显示更多信息,文件夹显示文件数) |
Mm |
mtime 模式 (文件名+最后修改时间) |
Mp |
permissions 模式 (权限信息+文件名) |
Ms |
sizemitime 模式 (文件名+ 文件大小+最后修改时间,文件夹显示文件数) |
Mt |
metatitle 模式 (文件名 + 文件大小,文件夹显示文件数) |
按键 | 说明 |
---|---|
w |
打开/关闭任务视图 |
dd |
终止一个任务 |
J |
降低当前任务的优先级 |
K |
提升当前任务的优先级 |
按键 | 说明 |
---|---|
!/s |
使用 shell 命令(!shell -w ls -hl %s ,%s 代表当前被选中的文件) |
: |
使用 Ranger 的命令 |
u |
撤销操作 |
W |
打开消息日志 |
du |
显示当前目录的磁盘占用情况 |
dU |
显示当前目录的磁盘占用情况(按大小排序) |
R |
刷新当前目录 |
^r |
清空缓存并刷新目录 |
^l |
重画当前窗口 |
~ |
切换界面风格 |
ESC |
退出到正常模式 |
q/Q/ZQ/ZZ |
退出 Ranger |
和 vim 一样,指令之前可以指定一个数字,表示执行多少次指令
按键 | 说明 |
---|---|
5^D |
向下翻5个半页 |
3h |
向上跳3级目录 |
6gg 或 6G |
跳第6行 |
20% |
跳到当前页的 20% 处 |
按键 | 说明 |
---|---|
: |
开头,可用 <TAB> 补全 |
所有命令都在~/.config/ranger/commands.py
中
:cd <dirname>
:chmod <octal_number>
:delete
:edit <filename>
:filter <string>
:find <regexp>
:grep <string>
:mark <regexp>
:unmark <regexp>
:mkdir <dirname>
:open_with <program< <mode> <flags>
<Enter>
:quit
:rename <newname>
:search <regexp>
/
:shell [-<flags>] <command>
<command>
:set colorscheme snow
:touch <filename>
除了:delete
,所有的命令可不用写全,前提与输入字母匹配的命令只有一个
修改 ~/.config/ranger/scope.sh
配置(默认配置就行)并安装以下程序可实现快速预览相关文件
#推荐
elinks #html
highlight #text/code
img2txt #image
atool #压缩包
pdftotext #pdf
medinfo #audio/video
官方仓库中列出的程序
img2txt
(基于caca-utils
) 用于ASCII图像预览w3mimgdisplay
、ueberzug
、kitty
、terminology
、urxvt
用于图像预览convert
(基于imagemagick
) 自动旋转图像并进行SVG预览ffmpegthumbnailer
用于视频缩略图highlight
、pygmentize
用于代码的语法突出显示atool
、bsdtar
、unrar
和/或7z
用于预览压缩包bsdtar
、tar
、unrar
和/或unzip
用于预览压缩包lynx
、w3m
、elinks
用于预览html页面pdftotext
、mutool
pdf预览,pdftoppm以图像预览djvutxt
用于文本DjVu预览 ddjvu
以图像预览calibre
、epub-thumbnailer
用于电子书的图像预览transmission-show
用于查看BitTorrent信息mediainfo
、exiftool
用于查看有关媒体文件的信息odt2txt
为OpenDocument文本文件(odt,ods,odp和sxw)python
、jq
JSON文件fontimage
用于字体预览