more、less 和 most 的區別
如果你是一個 Linux 方面的新手,你可能會在 more
、less
、most
這三個命令行工具之間產生疑惑。在本文當中,我會對這三個命令行工具進行對比,以及展示它們各自在 Linux 中的一些使用例子。總的來說,這幾個命令行工具之間都有相通和差異,而且它們在大部分 Linux 發行版上都有自帶。
我們首先來看看 more
命令。
more 命令
more
是一個老式的、基礎的終端分頁閱讀器,它可以用於打開指定的文件並進行互動式閱讀。如果文件的內容太長,在一屏以內無法完整顯示,就會逐頁顯示文件內容。使用回車鍵或者空格鍵可以滾動瀏覽文件的內容,但有一個限制,就是只能夠單向滾動。也就是說只能按順序往下翻頁,而不能進行回看。
更正
有的 Linux 用戶向我指出,在 more
當中是可以向上翻頁的。不過,最原始版本的 more
確實只允許向下翻頁,在後續出現的較新的版本中也允許了有限次數的向上翻頁,只需要在瀏覽過程中按 b
鍵即可向上翻頁。唯一的限制是 more
不能搭配管道使用(如 ls | more
)。(LCTT 譯註:此處原作者疑似有誤,譯者使用 more
是可以搭配管道使用的,或許與不同 more
版本有關)
按 q
即可退出 more
。
更多示例
打開 ostechnix.txt
文件進行互動式閱讀,可以執行以下命令:
$ more ostechnix.txt
在閱讀過程中,如果需要查找某個字元串,只需要像下面這樣輸入斜杠(/
)之後接著輸入需要查找的內容:
/linux
按 n
鍵可以跳轉到下一個匹配的字元串。
如果需要在文件的第 10
行開始閱讀,只需要執行:
$ more +10 file
就可以從文件的第 10
行開始顯示文件的內容了。
如果你需要讓 more
提示你按空格鍵來翻頁,可以加上 -d
參數:
$ more -d ostechnix.txt
如上圖所示,more
會提示你可以按空格鍵翻頁。
如果需要查看所有選項以及對應的按鍵,可以按 h
鍵。
要查看 more
的更多詳細信息,可以參考手冊:
$ man more
less 命令
less
命令也是用於打開指定的文件並進行互動式閱讀,它也支持翻頁和搜索。如果文件的內容太長,也會對輸出進行分頁,因此也可以翻頁閱讀。比 more
命令更好的一點是,less
支持向上翻頁和向下翻頁,也就是可以在整個文件中任意閱讀。
在使用功能方面,less
比 more
命令具有更多優點,以下列出其中幾個:
- 支持向上翻頁和向下翻頁
- 支持向上搜索和向下搜索
- 可以跳轉到文件的末尾並立即從文件的開頭開始閱讀
- 在編輯器中打開指定的文件
更多示例
打開文件:
$ less ostechnix.txt
按空格鍵或回車鍵可以向下翻頁,按 b
鍵可以向上翻頁。
如果需要向下搜索,在輸入斜杠(/
)之後接著輸入需要搜索的內容:
/linux
按 n
鍵可以跳轉到下一個匹配的字元串,如果需要跳轉到上一個匹配的字元串,可以按 N
鍵。
如果需要向上搜索,在輸入問號(?
)之後接著輸入需要搜索的內容:
?linux
同樣是按 n
鍵或 N
鍵跳轉到下一個或上一個匹配的字元串。
只需要按 v
鍵,就會將正在閱讀的文件在默認編輯器中打開,然後就可以對文件進行各種編輯操作了。
按 h
鍵可以查看 less
工具的選項和對應的按鍵。
按 q
鍵可以退出閱讀。
要查看 less
的更多詳細信息,可以參考手冊:
$ man less
most 命令
most
同樣是一個終端閱讀工具,而且比 more
和 less
的功能更為豐富。most
支持同時打開多個文件。你可以在打開的文件之間切換、編輯當前打開的文件、迅速跳轉到文件中的某一行、分屏閱讀、同時鎖定或滾動多個屏幕等等功能。在默認情況下,對於較長的行,most
不會將其截斷成多行顯示,而是提供了左右滾動功能以在同一行內顯示。
更多示例
打開文件:
$ most ostechnix1.txt
按 e
鍵可以編輯當前文件。
如果需要向下搜索,在斜杠(/
)或 S
或 f
之後輸入需要搜索的內容,按 n
鍵就可以跳轉到下一個匹配的字元串。
如果需要向上搜索,在問號(?
)之後輸入需要搜索的內容,也是通過按 n
鍵跳轉到下一個匹配的字元串。
同時打開多個文件:
$ most ostechnix1.txt ostechnix2.txt ostechnix3.txt
在打開了多個文件的狀態下,可以輸入 :n
切換到下一個文件,使用 ↑
或 ↓
鍵選擇需要切換到的文件,按回車鍵就可以查看對應的文件。
要打開文件並跳轉到某個字元串首次出現的位置(例如 linux),可以執行以下命令:
$ most file +/linux
按 h
鍵可以查看幫助。
按鍵操作列表
移動:
- 空格鍵或
D
鍵 – 向下滾動一屏 DELETE
鍵或U
鍵 – 向上滾動一屏↓
鍵 – 向下移動一行↑
鍵 – 向上移動一行T
鍵 – 移動到文件開頭B
鍵 – 移動到文件末尾>
鍵或TAB
鍵 – 向右滾動屏幕<
鍵 – 向左滾動屏幕→
鍵 – 向右移動一列←
鍵 – 向左移動一列J
鍵或G
鍵 – 移動到某一行,例如10j
可以移動到第 10 行%
鍵 – 移動到文件長度某個百分比的位置
窗口命令:
Ctrl-X 2
、Ctrl-W 2
– 分屏Ctrl-X 1
、Ctrl-W 1
– 只顯示一個窗口O
鍵、Ctrl-X O
– 切換到另一個窗口Ctrl-X 0
– 刪除窗口
文件內搜索:
S
鍵或f
鍵或/
鍵 – 向下搜索?
鍵 – 向上搜索n
鍵 – 跳轉到下一個匹配的字元串
退出:
q
鍵 – 退出most
,且所有打開的文件都會被關閉:N
、:n
– 退出當前文件並查看下一個文件(使用↑
鍵、↓
鍵選擇下一個文件)
要查看 most
的更多詳細信息,可以參考手冊:
$ man most
總結
more
– 傳統且基礎的分頁閱讀工具,僅支持向下翻頁和有限次數的向上翻頁。
less
– 比 more
功能豐富,支持向下翻頁和向上翻頁,也支持文本搜索。在打開大文件的時候,比 vi
這類文本編輯器啟動得更快。
most
– 在上述兩個工具功能的基礎上,還加入了同時打開多個文件、同時鎖定或滾動多個屏幕、分屏等等大量功能。
以上就是我的介紹,希望能讓你通過我的文章對這三個工具有一定的認識。如果想了解這篇文章以外的關於這幾個工具的詳細功能,請參閱它們的 man
手冊。
via: https://www.ostechnix.com/the-difference-between-more-less-and-most-commands/
作者:SK 選題:lujun9972 譯者:HankChow 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive