大家好,我是良许。

在抖音上做直播已经整整 5 个月了,我很自豪我一路坚持到了现在【笑脸】

最近我在做直播的时候,也开始学习鱼皮大佬,直播写代码。当然我不懂 Java 后端,因此就写写自己擅长的 Shell 脚本。

但是,由于我是在 Linux 终端上写代码,没办法向观众朋友们展示一些图片或者 PDF 文档,影响了一些直播效果。

这几天在查阅资料的时候,终于找到了一个神器,功能上可以实现我的需求。这个神器就是—— ranger

1. 什么是 ranger

ranger 是一款轻量级并且功能十分强大的 Linux 终端文件管理器,它跟 Vim 深度绑定。它不仅可以在终端直接查看文件内容,还可以快速编辑文件。

ranger 的界面十分清爽,可以显示目录的层次结构,可以允许你探索文件系统、搜索特定文件、切换目录等。

它一共由三列布局组成:

  • 左栏:上一级目录

  • 中栏:当前目录内容

  • 右栏:所选文件或文件夹的预览

除此之外, ranger 有哪些强大的功能呢?主要有以下:

  • 常用文件操作(创建/修改权限/复制/删除);
  • 类 Vim 控制台和快捷键;
  • 切换目录和浏览文件系统的快速方法;
  • 标签,书签,鼠标支持;
  • 视频缩略图预览;

接下来详细介绍 ranger 的用法。

2. 安装 ranger

由于 ranger 与 make、Git、Vim 所以在安装 ranger 之前,需要先安装好以上三个组件。

$ sudo apt install make git vim

不过这三个工具作为程序员基本上都已经安装好了。

ranger 几乎已经包含在所有 Linux 发行版,所以使用对应的包管理器基本上可以直接安装。

  • Debian/Ubuntu
$ sudo apt install ranger
  • CentOS/Fedora/RHEL
sudo yum install ranger

3. ranger 的基本用法

安装完成之后,只需要直接运行 ranger 这个命令就可以进入到 ranger 界面了。

进入到 ranger 界面之后,可以看到有一个对象被高亮显示。如果需要移动高亮块,除了使用箭头外,还可以使用 hjkl ,没错,跟 Vim 移动光标一样!

其实它的很多操作都跟 Vim 很类似,比如:

上页    ctrl + b/u
下页 ctrl + f/d 首行 gg
尾行 G 前进 L
后退 H
上级目录 h
下级目录 l 查找 f
搜索 /
查找下一个 n
查找上一个 N

文件管理:

新建目录/文件       :touch xxx
删除目录/文件 dD
修改目录/文件 cw/I/A
复制目录/文件 yy
粘贴目录/文件 pp
剪切目录/文件 dd
刷新目录/文件 R

如果嫌键盘麻烦,它可以直接使用鼠标点击操作!如果想打开某个文件,直接按下回车就行,想要退出 ranger ,敲下 q 就行。

更多操作可以查看文末官方 GitHub 介绍。

4. ranger 的配置文件

跟其它 Linux 程序一样,ranger 也是有很多配置文件,但需要你执行以下命令生成本地配置文件:

$ ranger --copy-config=all

然后,就会在 ~/.config/ranger 里生成四个主要的配置文件:

  • commands.py:定义了 ranger 的控制台命令;

  • rifle.py:定义了使用什么程序来打开文件;

  • rc.conf:ranger 按键绑定及设置;

  • scope.sh:定义了如何处理文件预览。

前文已经说过,ranger 与 Vim 已经深度绑定,如果你不喜欢 Vim 的操作方式,可以通过修改 rc.config 来修改配置。

5. 使用 ranger 预览文件

在正常情况下,我们需要查看一个文件的内容时,需要先打开才能查看。

有了 ranger 这个神器,你不需要打开文件,选中某个文件,立刻就能直接预览!

常用的文本文件,比如:.txt,.py,.docx,.epub,.pdf,完全不在话下,你甚至还可以直接预览图片及视频!

scope.sh 这个文件里,可以指定什么程序去预览这些文件。

6. 使用 ranger 预览图片

在一些终端工具,比如 urxvtiTerm2Kitty 和 Terminology ,可以支持图片预览。

(实测 MobaXtermXshell 都暂时还不支持直接图片预览,而是打开一个新窗口)

可以在 rc.conf 这个配置文件里,将 preview_images_method 这个变量设置为 true

7. 使用 ranger 预览 PDF 文件

默认情况下,ranger 是将 PDF 文件转为图片再显示。如果你想原汁原味显示 PDF 文件,可以打开 scope. sh 这个文件,然后把下面这段代码的注释打开:

接下来,你就可以正常预览 PDF 文件了。(但是我在MobaXtermXshell 实测都暂时还不支持直接预览,而是打开一个新窗口)

8. 控制台命令

就像 Vim 一样,ranger 也有控制台命令选项(就是界面最下面的那一行)。你可以通过键入: 然后跟上对应的命令来使用它们。

下面列出了一些有用的命令。

  • :bulkrename – 批量重命名
  • :openwith – 使用您选择的程序打开选择的文件
  • :touch 文件名 – 创建一个文件
  • :mkdir 文件名 – 创建目录
  • :shell <命令> – 在 shell 中运行命令 (bash/zsh 等)
  • :delete – 删除文件

这些命令同样也可以配合占位符和选项一起使用,实现现强大的功能。

占位符

  • %F – 替换突出显示的文件
  • %d – 替换当前目录
  • %s – 替换当前选择的文件
  • %t – 替换当前标记的文件

比如—— :delete %s  删除所有当前选择的文件。

选项

  • w – 查看外部命令的输出,像这样 :shell -w free
  • t - fork 控制台程序(在新的终端窗口中运行),像这样 :shell -t nano
  • f – fork GUI 程序,像这样 :shell -f firefox
  • r – 以 root 权限运行程序。

9. 小结

在本文里,我们介绍了怎样安装、设置和使用终端文件管理器 ranger。 它的工作与普通的文件管理器很类似,但由于它在终端中工作并支持各种脚本、按键绑定和命令,因此它比使用图形用户界面浏览文件更强大。

ranger 官方 GitHub 链接:https://github.com/ranger/ranger

Linux终端居然也可以做文件浏览器?的更多相关文章

  1. Electron为文件浏览器创建图标(三)

    在前面的文章中,请看之前文章,我们已经完成了使用 electron做文件浏览器这么一个应用,现在我们需要为应用创建图标操作.为应用创建图标以后,我们就可以从计算机中与其他应用区分开来,如果我们自己会做 ...

  2. 在Linux终端使用W3M浏览器下载文件

    在Linux终端使用W3M浏览器下载文件 W3M 是3个基于Linux系统命令行的WEB网站浏览工具(w3m/Links/Lynx) 对于需要验证cookie 和来源的页面,比如163的超大附件,直接 ...

  3. 在Linux终端管理文件你要知道的11个命令

    LS - 列表文件 ls命令列出目录中的文件. 默认情况下,使用ls列出当前目录下的文件. 2 你也可以列出文件递归-也就是说,列出所有文件在当前目录中的目录-使用ls -R.LS还可以列出在其他目录 ...

  4. Linux 终端访问 FTP 及 上传下载 文件

    今天同事问我一个问题,在Linux 下访问FTP,并将文件上传上去. 我之前一直是用WinSCP工具的. 先将文件从linux copy到windows下,然后在传到ftp上.google 一下. 方 ...

  5. Linux 终端訪问 FTP 及 上传下载 文件

    今天同事问我一个问题,在Linux 下訪问FTP,并将文件上传上去. 我之前一直是用WinSCP工具的. 先将文件从linux copy到windows下,然后在传到ftp上. google 一下. ...

  6. Linux 终端访问 FTP 及 上传下载 文件[转]

    1.      Linux 终端连接FTP [oracle@Dave ~]$ ftp 10.85.7.97 Connected to 10.85.7.97. 220 Serv-U FTP Server ...

  7. Linux 终端下解压文件失败问题

    Linux 终端下解压文件失败: # tar -zxvf *****.tar.bz2 tar 命令出错gzip: stdin: not in gzip format tar: Child return ...

  8. 如何在linux终端创建文件

    我们都知道可以用mkdir命令创建一个新的目录,但更多时候如果能直接创建一个文件(普通文件)会让人感觉更愉悦:这样就可以不用在去打开一个专门的创建文本文件的软件,然后还要设置文件名,保存路径那样的繁琐 ...

  9. 太高效了!玩了这么久的Linux,居然不知道这7个终端快捷键!

    大家好,我是良许. 作为 Linux 用户,大家肯定在 Linux 终端下敲过无数的命令.有的命令很短,比如:ls .cd .pwd 之类,这种命令大家毫无压力.但是,有些命令就比较长了,比如: $ ...

  10. 20个Linux命令及Linux终端的趣事

    20个Linux命令及Linux终端的趣事 . 命令:sl (蒸汽机车) 你可能了解 ‘ls’ 命令,并经常使用它来查看文件夹的内容.但是,有些时候你可能会拼写成 ‘sl’ ,这时我们应该如何获得一些 ...

随机推荐

  1. w3cschool-微信小程序开发文档-指南

    https://www.w3cschool.cn/weixinapp/9wou1q8j.html https://www.w3cschool.cn/miniappbook/ 微信小程序 小程序简介 小 ...

  2. 系统提示msvcp120.dll丢失如何解决

    最近有位win7系统用户反映,自己安装完游戏开始玩的时候,系统却提示:示msvcp120.dll丢失,这导致了游戏无法正常运行,这让用户很是苦恼,不知道电脑如何解决,为此非常苦恼,那么win7系统提示 ...

  3. 对rpc长连接与短连接的思考

    大家好,我是思无邪,某go中厂开发工程师,也是OSPP2024的学生参与者! 如果你觉得我的文章有帮助,记得三连支持一下哦! 目前正在深入研究源码,与你们一起进步,共同攻克编程难关! 欢迎关注我的公众 ...

  4. 20 分钟高效掌握 cursor

    本身属于在前端小组的一次小分享,这里做个同步分享. 一.pro 权益说明 目前公司购买了 2 个 pro 月付账号,权益包括无限制 tab 补全与 ai 聊天,但每个月只有 500 个快速请求权益,如 ...

  5. Linux编写一个自己的命令

    Linux编写一个自己的命令 编译一个.c文件,生成可执行文件out.out只有在当前目录下可以执行. 而命令可在任何路径执行 想让out可以在任意路径执行,有以下两种办法 1.将执行文件添加到 /b ...

  6. 普通文本(.txt)篇章排版样式参考 [文档说明][日志]

    把普通文本的篇章排版样式归总一下,供自己参考,当然如果读者能以此借鉴并学习到一些东西,是笔者最大的鼓励. 日志类 [1] 头标 [时间日期][备注][属性]内容 [2] [文件信息][符号][文件信息 ...

  7. .NET MCP项目对比分析:MCPSharp、mcpdotnet与ModelContextProtocol.NET

    MCP(Model Context Protocol)协议是一种由Anthropic推出的开放协议,旨在实现大型语言模型(LLM)与外部数据源和工具之间的无缝集成.简要对比分析三个.NET的MCP项目 ...

  8. Visual Studio 好用的主题+字体推荐!!!

    Vs2022主题+字体 Visual Studio(VS)是一款功能强大的集成开发环境(IDE),可以用于开发各种类型的应用程序,包括桌面应用.Web应用.移动应用等.它提供了许多主题设置和字体选项, ...

  9. 探秘Transformer系列之(10)--- 自注意力

    探秘Transformer系列之(10)--- 自注意力 目录 探秘Transformer系列之(10)--- 自注意力 0x00 概述 0x01 原理 1.1 设计思路 1.2 输入 1.3 QKV ...

  10. 【markdown】各种markdown的骚操作

    目录 1.给图片居中.加题注 2. 文字添加下划线 3. 文字高亮.自定义高亮的颜色 4. 博客文章生成目录 5. markdown 实现页内跳转 6. 数学公式调大尺寸.右编号 7. 折叠内容 8. ...