more (命令)

more是一種用於命令列分頁顯示的工具。相比less而言,其較為原始,功能有限。

more
Unix/Unix-like平台上more命令的輸出
開發者Daniel Halbert
作業系統跨平台
類型系統工具
許可協定GPL或其它

常見版本

歷史

more的原作者是Daniel Halbert,並由Eric Shienbrood和Geoff Peck擴充功能[1]

Daniel Halbert在MIT就讀本科時,他學習的作業系統是ITS。ITS內建一個分頁工具,當顯示的內容滿一螢幕後,它會在螢幕的底部添加提示「--more--」,用戶按下空格鍵就能繼續顯示下一頁的內容。

Daniel Halbert考入加利福尼亞大學伯克利分校就讀研究生課程時,學習的是VAX Unix系統,它使用的分頁器是cr3。當一頁文字已經顯示完成後,cr3用系統響鈴的方式提示用戶。這個做法有幾個不利,一來,很多終端是「啞終端」,沒有揚聲器;二來,裝滿大量終端的機房內嗶聲此起彼伏,用戶也不勝其煩。於是Daniel Halbert改進了cr3,並將新工具命名為「more」。這是第一個採用完整英文單詞命名的Unix命令。隨後發行的BSD 3.0首次包含了more。此後,它成為所有的Unix及Unix-like作業系統的標準工具。

用法

Unix/Unix-like作業系統[2]

輸入

  • 檔名作為參數直接輸入:如,more ~/維基百科.txt
  • 用管道符輸入:如,more < ~/維基百科.txt;或者,cat ~/維基百科.txt | more。

參數

  • -數字 指定一頁顯示的行數。
  • -d 將在「--More--(已讀百分比)」後顯示提示資訊「[Press space to continue, 'q' to quit.]」;當用戶按下無效按鍵時,出現提示資訊「[Press 'h' for instructions.]」。
  • -l 忽略換頁符(^L)。沒有此參數時,more遇到含有^L的行將自動暫停顯示。
  • -f 按原檔案實際的行數計算,而非以顯示在螢幕上的行數計算。(檔案中的一行文字可能非常長,佔用數個螢幕行,此時開啟本選項,將無法很好地完成分頁功能)。
  • -p 以清屏代替滾屏。
  • -c 類似於-p。
  • -s 將數個連續空行顯示為一個空行。
  • -u 取消底線。
  • +/ 在顯示之前,先搜尋指定字串。
  • +數字 在指定的行數開始顯示。

鍵盤命令

  • h鍵或?鍵 簡要顯示鍵盤命令的作用。
  • 空格鍵 顯示k行[註 1]。預設值為螢幕行數。
  • z鍵 顯示k行。預設值為螢幕行數。如果定義了新的k值,k值將成為新的預設值。
  • 確認鍵 顯示k行。預設值為1。如果定義了新的k值,k值將成為新的預設值。
  • d鍵或Ctrl+D鍵 捲動k行。預設值為當前捲動的行數。如果定義了新的k值,k值將成為新的預設值。
  • q鍵 退出
  • s鍵 向下跳過k個邏輯行。預設值為1。
  • f鍵 向下跳過k屏。預設值為1。
  • b鍵或Ctrl+B鍵 往回k螢幕。預設值為1。僅對檔案有效,對管道無效。
  • =鍵 顯示當前行號。
  • /鍵+正則表達式 搜尋第k次出現的正則表達式。預設值為1。
  • n鍵 搜尋第k次出現的最後用過的正則表達式。預設值為1。
  • !鍵+命令或:鍵+!鍵+命令 在一個子shell中啟動指定命令。
  • v鍵 在當前行啟動編輯器。編輯器由環境變數決定,優先權為VISUAL>EDITOR,如果VISUAL和EDITOR均未定義,則啟動vi。
  • Ctrl+L鍵 重新繪製螢幕。
  • :鍵+n鍵 跳到第k個檔案。預設值為1。
  • :鍵+p鍵 跳到第k個之前的檔案。預設值為1。
  • :鍵+f鍵 顯示當前的檔名及行號。
  • .鍵 重複前一個命令。
  1. ^ 可以在部分命令鍵前先按數字鍵,將數值傳遞給命令,此數值就稱為k

環境變數

  • MORE 設定預設參數。
  • SHELL 當前正在使用的shell。
  • TERM 指定終端類型,以便獲得螢幕的規格。

Windows作業系統[3]

格式

  • more /E [/C] [/P] [/S] [/Tn] [+n] <檔案1>[<空格鍵>檔案2...]
  • more [/E [/C] [/P] [/S] [/Tn] +n < [驅動器:][路徑]檔名
  • 命令 | more [/E [/C] [/P] [/S] [/Tn] +n

參數

  • /E 啟用擴充功能(見下)。
  • /C 顯示頁面前先清除螢幕。
  • /P 擴充換頁符。
  • /S 將多個空白行縮成一行。
  • /Tn 將跳格鍵擴充成n個空格(預設值為8)。
  • +n 從第 n 行開始顯示第一個檔案

備註,上述參數,除+n外,可以出現在環境變數MORE中。

擴充功能

如果擴充的功能已經啟用,在「-- More --」提示處會接受下列鍵盤命令:

  • P n 顯示下n行。
  • S n 略過下n行。
  • F 顯示下個檔案。
  • Q 退出。
  • = 顯示行號。
  • ? 顯示幫助行。
  • <space> 顯示下一頁。
  • <return> 顯示下一行。

參考文獻

  1. ^ 存档副本. [2017-09-05]. (原始內容存檔於2009-04-13). 
  2. ^ more的manpage。. [2009-10-23]. (原始內容存檔於2005-11-06). 
  3. ^ [Microsoft Windows XP SP2命令列more /?的輸出]