在 Linux 命令列使用 more 檢視文字檔案

2019-02-12 20:06:00

文字檔案和 Linux 一直是攜手並進的。或者說看起來如此。那你又是依靠哪些讓你使用起來很舒服的工具來檢視這些文字檔案的呢?

Linux 下有很多實用工具可以讓你在終端介面檢視文字檔案。其中一個就是 more

more 跟我之前另一篇文章裡寫到的工具 —— less 很相似。它們之間的主要不同點在於 more 只允許你向前檢視檔案。

儘管它能提供的功能看起來很有限,不過它依舊有很多有用的特性值得你去了解。下面讓我們來快速瀏覽一下 more 可以做什麼,以及如何使用它吧。

基礎使用

假設你現在想在終端檢視一個文字檔案。只需開啟一個終端,進入對應的目錄,然後輸入以下命令:

$ more <filename>

例如,

$ more jekyll-article.md

使用空格鍵可以向下翻頁,輸入 q 可以退出。

如果你想在這個檔案中搜尋一些文字,輸入 / 字元並在其後加上你想要查詢的文字。例如你要檢視的欄位是 “terminal”,只需輸入:

/terminal

搜尋的內容是區分大小寫的,所以輸入 /terminal/Terminal 會出現不同的結果。

和其他實用工具組合使用

你可以通過管道將其他命令列工具得到的文字傳輸到 more。你問為什麼這樣做?因為有時這些工具獲取的文字會超過終端一頁可以顯示的限度。

想要做到這個,先輸入你想要使用的完整命令,後面跟上管道符(|),管道符後跟 more。假設現在有一個有很多檔案的目錄。你就可以組合 morels 命令完整檢視這個目錄當中的內容。

$ ls | more

你可以組合 moregrep 命令,從而實現在多個檔案中找到指定的文字。下面是我在多篇文章的原始檔中查詢 “productivity” 的例子。

$ grep ‘productivity’ core.md Dict.md lctt2014.md lctt2016.md lctt2018.md README.md | more

另外一個可以和 more 組合的實用工具是 ps(列出你系統上正在執行的進程)。當你的系統上執行了很多的進程,你現在想要檢視他們的時候,這個組合將會派上用場。例如你想找到一個你需要殺死的進程,只需輸入下面的命令:

$ ps -u scott | more

注意用你的使用者名稱替換掉 “scott”。

就像我文章開篇提到的, more 很容易使用。儘管不如它的雙胞胎兄弟 less 那般靈活,但是仍然值得了解一下。