如果你是一個(gè) Linux 方面的新手,你可能會(huì)在 more、less、most 這三個(gè)命令行工具之間產(chǎn)生疑惑。在本文當(dāng)中,我會(huì)對(duì)這三個(gè)命令行工具進(jìn)行對(duì)比,以及展示它們各自在 Linux 中的一些使用例子??偟膩碚f,這幾個(gè)命令行工具之間都有相通和差異,而且它們?cè)诖蟛糠?Linux 發(fā)行版上都有自帶。
我們首先來看看 more 命令。
more 命令
more 是一個(gè)老式的、基礎(chǔ)的終端分頁(yè)閱讀器,它可以用于打開指定的文件并進(jìn)行交互式閱讀。如果文件的內(nèi)容太長(zhǎng),在一屏以內(nèi)無法完整顯示,就會(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è)。
您可能感興趣的文章:- linux cat more less顯示文件的區(qū)別
- Linux 常用命令之Linux more命令使用方法
- 每天學(xué)一個(gè) Linux 命令之more命令
- Linux命令詳解之less命令