less命令


less命令也是對檔案或其它輸出進行分頁顯示的工具,應該說是linux正統檢視檔案內容的工具,功能極其強大。less 的用法比起 more 更加的有彈性。在 more 的時候,我們並沒有辦法向前面翻, 只能往後面看,但若使用了 less 時,就可以使用 [pageup] [pagedown] 等按鍵的功能來往前往後翻看檔案,更容易用來檢視一個檔案的內容!除此之外,在 less 裡頭可以擁有更多的搜尋功能,不止可以向下搜,也可以向上搜。

1.命令格式

less [引數] 檔案

2.命令功能

lessmore 類似,但使用 less 可以隨意瀏覽檔案,而 more 僅能向前移動,卻不能向後移動,而且 less 在檢視之前不會載入整個檔案。

3.命令引數

  • -b <緩衝區大小> 設定緩衝區的大小
  • -e 當檔案顯示結束後,自動離開
  • -f 強迫開啟特殊檔案,例如外圍裝置代號、目錄和二進位制檔案
  • -g 只標誌最後搜尋的關鍵詞
  • -i 忽略搜尋時的大小寫
  • -m 顯示類似more命令的百分比
  • -N 顯示每行的行號
  • -o <檔案名> 將less 輸出的內容在指定檔案中儲存起來
  • -Q 不使用警告音
  • -s 顯示連續空行為一行
  • -S 行過長時間將超出部分捨棄
  • -x <數位> 將「tab」鍵顯示為規定的數位空格
  • /字串:向下搜尋「字串」的功能
  • ?字串:向上搜尋「字串」的功能
  • n:重複前一個搜尋(與 / 或 ? 有關)
  • N:反向重複前一個搜尋(與 / 或 ? 有關)
  • b 向後翻一頁
  • d 向後翻半頁
  • h 顯示幫助介面
  • Q 退出less 命令
  • u 向前捲動半頁
  • y 向前捲動一行
  • 空格鍵 捲動一行
  • 確認鍵 捲動一頁
  • [pagedown]: 向下翻動一頁
  • [pageup]: 向上翻動一頁

4.使用範例:

範例1

檢視檔案
命令:

less log.log

輸出:

this is line 1.
this is line 2.
this is line 3.
this is line 4.

this is line5.

this is line 6.
this is line 7.
this is line 8.
this is line 9.
this is line 10.
this is line 11.
this is line 12.
this is line 13.
this is line 14.
this is line 15.
log.log

範例2

ps檢視進程資訊並通過less分頁顯示
命令:

ps -ef |less

輸出:

UID         PID   PPID  C STIME TTY          TIME CMD
root          1      0  0 19:28 ?        00:00:06 /usr/lib/systemd/systemd --switched-root --system --deserialize 21
root          2      0  0 19:28 ?        00:00:00 [kthreadd]
root          3      2  0 19:28 ?        00:00:00 [ksoftirqd/0]
root          6      2  0 19:28 ?        00:00:00 [kworker/u256:0]
root          7      2  0 19:28 ?        00:00:00 [migration/0]
root          8      2  0 19:28 ?        00:00:00 [rcu_bh]
root          9      2  0 19:28 ?        00:00:01 [rcu_sched]
root         10      2  0 19:28 ?        00:00:00 [watchdog/0]
root         12      2  0 19:28 ?        00:00:00 [khelper]
root         13      2  0 19:28 ?        00:00:00 [kdevtmpfs]
root         14      2  0 19:28 ?        00:00:00 [netns]
root         15      2  0 19:28 ?        00:00:00 [khungtaskd]
root         16      2  0 19:28 ?        00:00:00 [writeback]
root         17      2  0 19:28 ?        00:00:00 [kintegrityd]
root         18      2  0 19:28 ?        00:00:00 [bioset]
:

範例3

檢視命令歷史使用記錄並通過less分頁顯示
命令:

history | less

輸出:

    1  top
    2  ls
    3  cd test
    4  ll
    5  vi log.log
    6  cat log.log
    7  nl log.log
    8  [yiibai@localhost test]$ cat log.log
    9  this is line 1.
   10  this is line 2.
   11  this is line 3.
   12  this is line 4.
   13  [yiibai@localhost test]$ nl log.log
   14       1  this is line 1.
   15       2  this is line 2.
   16       3  this is line 3.
   17       4  this is line 4.
:

範例5

瀏覽多個檔案
命令:

less log.txt log.log

輸出:

Hello
World
Linux command
PWD=/home/yiibai/test
~
~
~
(END) - Next: log.log

說明:

  • 輸入 :n 後,切換到 log.log
  • 輸入 :p 後,切換到 log.txt

5.附加備註

  • 5.1.全螢幕導航
    ctrl + F - 向前移動一屏
    ctrl + B - 向後移動一屏
    ctrl + D - 向前移動半屏
    ctrl + U - 向後移動半屏

  • 5.2.單行導航
    j - 向前移動一行
    k - 向後移動一行

  • 5.3.其它導航
    G - 移動到最後一行
    g - 移動到第一行
    q / ZZ - 退出 less 命令

  • 5.4.其它有用的命令
    v - 使用組態的編輯器編輯當前檔案
    h - 顯示 less 的幫助文件
    &pattern - 僅顯示匹配模式的行,而不是整個檔案

  • 5.5.標記導航
    當使用 less 檢視大檔案時,可以在任何一個位置作標記,可以通過命令導航到標有特定標記的文字位置:
    ma - 使用 a 標記文字的當前位置
    ‘a - 導航到標記 a 處