Linux終端居然也可以做檔案瀏覽器?

良許發表於2023-04-06

大家好,我是良許。

在抖音上做直播已經整整 5 個月了,我很自豪我一路堅持到了現在【笑臉】

最近我在做直播的時候,也開始學習魚皮大佬,直播寫程式碼。當然我不懂 Java 後端,因此就寫寫自己擅長的 Shell 指令碼。

但是,由於我是在 Linux 終端上寫程式碼,沒辦法向觀眾朋友們展示一些圖片或者 PDF 文件,影響了一些直播效果。

這幾天在查閱資料的時候,終於找到了一個神器,功能上可以實現我的需求。這個神器就是—— ranger

1. 什麼是 ranger

ranger 是一款輕量級並且功能十分強大的 Linux 終端檔案管理器,它跟 Vim 深度繫結。它不僅可以在終端直接檢視檔案內容,還可以快速編輯檔案。

file

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 這個檔案裡,可以指定什麼程式去預覽這些檔案。

file

6. 使用 ranger 預覽圖片

在一些終端工具,比如 urxvtiTerm2Kitty 和 Terminology ,可以支援圖片預覽。

(實測 MobaXtermXshell 都暫時還不支援直接圖片預覽,而是開啟一個新視窗)

可以在 rc.conf 這個配置檔案裡,將 preview_images_method 這個變數設定為 true

file

7. 使用 ranger 預覽 PDF 檔案

預設情況下,ranger 是將 PDF 檔案轉為圖片再顯示。如果你想原汁原味顯示 PDF 檔案,可以開啟 scope. sh 這個檔案,然後把下面這段程式碼的註釋開啟:

file

接下來,你就可以正常預覽 PDF 檔案了。(但是我在MobaXtermXshell 實測都暫時還不支援直接預覽,而是開啟一個新視窗)

file

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


學習程式設計,千萬不要急於求成,一定要多讀一些經典書籍,多看原始碼,多下苦功夫去死磕程式碼,這樣技術才能長進。給大家分享一些程式設計師必讀經典書籍,一定要多讀幾遍:

file

免費送給大家,只求大家金指給我點個贊!

程式設計師必讀經典書單(高畫質PDF版)

有收穫?希望老鐵們來個三連擊,給更多的人看到這篇文章

推薦閱讀:

歡迎關注我的部落格:良許Linux教程網,滿滿都是乾貨!

相關文章