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