less 命令: 查看文件內容 概念 less 與 more 類似,less 可以隨意瀏覽文件,支持翻頁和搜索,支持向上翻頁和向下翻頁。而使用 more 命令瀏覽文件內容時,只能不斷向後翻看。 介紹 用法: less [OPTION]... [FILE]... 常用參數: 常用選項及含義 | Key ...
less 命令: 查看文件內容
概念
less 與 more 類似,less 可以隨意瀏覽文件,支持翻頁和搜索,支持向上翻頁和向下翻頁。而使用 more 命令瀏覽文件內容時,只能不斷向後翻看。
介紹
-
用法:
less [OPTION]... [FILE]...
-
常用參數:
-
常用選項及含義
Key Value -N 顯示每行的行號。 -S 行過長時將超出部分捨棄。 -e 當文件顯示結束後,自動離開。 -g 只標誌最後搜索到的關鍵同。 -Q 不使用警告音。 -i 忽略搜索時的大小寫。 -m 顯示類似 more 命令的百分比。 -f 強迫打開特殊文件,比如外圍設備代號、目錄和二進位文件。 -s 顯示連續空行為一行。 -b <緩衝區大小> 設置緩衝區的大小。 -o [file] 將 less 輸出的內容保存到指定文件中。 -x [num] 將【Tab】鍵顯示為規定的數字空格。 -
交互指令及功能
Key Value /pattern 向下搜索 “pattern” 的功能。 ?pattern 向上搜索 “pattern” 的功能。 n 重覆*前一個搜索(與 / 成 ? 有關)。 N 反向重覆前一個搜索(與 / 或 ? 有關)。 h | H 顯示幫助界面。 q | Q | ZZ 退出 less 命令。 G 移動至 “首行”。 g 移動至 “尾行”。 j | e 向下移動一行。 k | y 向上移動一行。 d | Ctrl-d 向下移動半頁。 u | Ctrl-u 向上移動半頁。 f | Ctrl-f | z 向下移動一頁。 b | Ctrl-b | w 向上移動一頁。 v 使用配置的編輯器編輯當前文件。 F 永遠向前;像 "tail -f"。 m letter 用 letter 標記當前頂行。 'letter 轉到一個先前標記 letter 的位置。 '' 轉到之前的位置。 ESC-M letter 清除一個標記。
-
慄子
-
查看文件
less log1.log
Tips:
- 可以按大寫 F,就會有類似 tail -f 的效果,讀取寫入文件的最新內容, 按 ctrl+C 停止。
- 可以按 v 進入編輯模型, shift+ZZ 保存退出到 less 查看模式。
- 使用參數 N 可以顯示行號;
-
分頁顯示“進程信息”或“歷史記錄”
ps -ef | less
history | less -
瀏覽多個文件
less log2.txt log3.txt
Tips:
:n
: 切換到 log2.txt:p
: 切換到 log3.txt:e log3.txt
打開新文件log3.txt
less 參數大全
UMMARY OF LESS COMMANDS(Less命令的摘要)
標有*的命令可以在前面加上一個數字,N。
括弧中的註釋表示如果給定了N的行為。
前面有一個圓點的鍵表示Ctrl鍵,因此^K是ctrl-K。
h H 顯示此幫助。
q :q Q :Q ZZ 退出。
MOVING(移動)
e ^E j ^N CR * 前進一行(或_N行)。
y ^Y k ^K ^P * 後退一行(或_N行)。
f ^F ^V SPACE * 前進一個視窗(或_N行)。
b ^B ESC-v * 後退一個視窗(或_N行)。
z * 向前一個視窗(並將視窗設置為_N)。
w * 後退一個視窗(並將視窗設置為_N)。
ESC-SPACE * 前進一個視窗,但不要停在文件的末端。
d ^D * 前進一個半視窗(並將半視窗設置為_N)。
u ^U * 後退一個半視窗(並將半視窗設置為_N)。
ESC-) RightArrow * 向右移動半個屏幕寬度(或_N個位置)。
ESC-( LeftArrow * 左半屏寬度(或_N個位置)。
ESC-} ^RightArrow 向右到最後一列顯示。
ESC-{ ^LeftArrow 向左到第一欄。
F 永遠向前;像 "tail -f"。
ESC-F 像F一樣,但在找到搜索模式時停止。
r ^R ^L 重新繪製屏幕。
R 重新繪製屏幕,丟棄緩衝輸入。
---------------------------------------------------
預設的 "視窗 "是屏幕的高度。
預設的 "半窗 "是屏幕高度的一半。
SEARCHING(檢索)
/pattern * 向前搜索(_N-th)匹配的行。
?pattern * 向後搜索(第_N次)匹配的行。
n * 重覆之前的搜索(第_N次出現)。
N * 以相反的方向重覆之前的搜索。
ESC-n * 重覆先前的搜索,跨越文件。
ESC-N * 重覆先前的搜索,反方向搜索,並跨越文件。
ESC-u 撤銷(切換)搜索高亮顯示。
ESC-U 清除搜索高亮顯示.
&pattern * 只顯示匹配行。
---------------------------------------------------
一個搜索模式可以以下列一項或多項開始。
^N 或 ! 搜索不匹配的行。
^E 或 * 搜索多個文件(通過文件末尾)。
^F 或 @ 從第一個文件(對於 /)或最後一個文件(對於 ?)開始搜索。
^K 突出顯示匹配的文件,但不移動(保留位置)。
^R 不使用常規表達式。
^W 如果沒有找到匹配,則進行WRAP搜索。
JUMPING(跳轉)
g < ESC-< * 轉到文件的第一行(或第N行)。
G > ESC-> * 轉到文件的最後一行(或第N行)。
p % * 轉到文件的開頭(或文件的N%)。
t * 轉到(N-th)下一個標簽。
T * 轉到前一個標簽(N-th)。
{ ( [ * 找出閉合括弧 } ) ].
} ) ] * 查找大括弧 { ( [.
ESC-^F <c1> <c2> * 查找封閉括弧 <c2>.
ESC-^B <c1> <c2> * 查找開放括弧 <c1>。
---------------------------------------------------
每條 "查找括弧" 命令都會前進到與頂行中(第N個)開放括弧相匹配的括弧處
匹配頂行中的(第N個)開放括弧。
每條 "查找開括弧" 命令都會向後移動到開括弧
匹配底行的(第N個)封閉括弧。
m<letter> 用<letter>標記當前頂行。
M<letter> 用<letter>標記當前的底行。
'<letter> 轉到一個先前標記的位置。
'' 轉到之前的位置。
^X^X 與'相同。
ESC-M<letter> 清除一個標記。
---------------------------------------------------
一個標記是任何大寫或小寫的字母。
某些標記是預定義的:
^ 表示文件的開始
$ 表示文件的結束
CHANGING FILES(改變文件)
:e [file] 檢查一個新文件。
^X^V 與 :e 相同。
:n * 檢查命令行中的(N-th)下一個文件。
:p * 檢查命令行中的前一個(N個)文件。
:x * 從命令行中檢查第一個(或第N個)文件。
:d 從命令行列表中刪除當前文件。
= ^G :f 列印當前文件名。
MISCELLANEOUS COMMANDS(其他命令)
-<flag> 切換一個命令行選項[見下麵的 OPTIONS]。
--<name> 按名稱切換一個命令行選項。
_<flag> 顯示一個命令行選項的設置。
__<name> 按名稱顯示一個選項的設置。
+cmd 每次檢查一個新文件時,執行 less cmd。
!command 執行帶有 $SHELL 的 shell命令。
|Xcommand 在當前位置和 標記X 之間管文件到 shell命令。
s file 將輸入內容保存到文件中。
v 用 $VISUAL 或 $EDITOR 編輯當前文件。
V 列印 "less "的版本號。
OPTIONS(選項)
大多數選項可以在命令行上改變。
或者在 less 中使用 - 或 -- 命令來改變。
選項可以以兩種形式之一給出:要麼是以"-"開頭的單個字元,要麼是以"--"開頭的名稱。
-? ........ --help
顯示幫助(來自命令行)。
-a ........ --search-skip-screen
搜索跳過當前屏幕。
-A ........ --SEARCH-SKIP-SCREEN
搜索從目標行後開始。
-b [N] .... --buffers=[N]
緩衝區的數量。
-B ........ --auto-buffers
不要自動為管道分配緩衝區。
-c ........ --clear-screen
通過清除而不是滾動來重新繪製。
-d ........ --dumb
啞巴終端。
-D xcolor . --color=xcolor
設置屏幕顏色。
-e -E .... --quit-at-eof --QUIT-AT-EOF
在文件結束時退出。
-f ........ --force
強制打開非常規文件。
-F ........ --quit-if-one-screen
如果整個文件適合在第一屏幕上顯示,則退出。
-g ........ --hilite-search
只突出最後一個匹配的搜索。
-G ........ --HILITE-SEARCH
不突出顯示任何匹配的搜索。
-h [N] .... --max-back-scroll=[N]
向後滾動的限制。
-i ........ --ignore-case
在不包含大寫字母的搜索中忽略大小寫。
-I ........ --IGNORE-CASE
忽略所有搜索中的大小寫。
-j [N] .... --jump-target=[N]
目標行的屏幕位置。
-J ........ --status-column
在屏幕的左邊緣顯示狀態欄。
-k [file] . --lesskey-file=[file]
使用一個lesskey文件。
-K ........ --quit-on-intr
響應ctrl-C,退出less。
-L ........ --no-lessopen
忽略 LESSOPEN 環境變數。
-m -M .... --long-prompt --LONG-PROMPT
設置提示樣式。
-n -N .... --line-numbers --LINE-NUMBERS
不使用行數。
-o [file] . --log-file=[file]
拷貝到日誌文件(僅標準輸入)。
-O [file] . --LOG-FILE=[file]
拷貝到日誌文件(無條件覆蓋)。
-p [pattern] --pattern=[pattern]
從模式開始(來自命令行)。
-P [prompt] --prompt=[prompt]
定義新的提示。
-q -Q .... --quiet --QUIET --silent --SILENT
讓終端的鈴聲安靜下來。
-r -R .... --raw-control-chars --RAW-CONTROL-CHARS
輸出 "原始 "控制字元。
-s ........ --squeeze-blank-lines
擠掉多個空行。
-S ........ --chop-long-lines
切斷(截斷)長行,而不是包裹。
-t [tag] .. --tag=[tag]
找到一個標簽。
-T [tagsfile] --tag-file=[tagsfile]
使用一個備用的標簽文件。
-u -U .... --underline-special --UNDERLINE-SPECIAL
改變對尾碼的處理。
-V ........ --version
顯示 "less "的版本號。
-w ........ --hilite-unread
突出顯示轉屏後的第一個新行。
-W ........ --HILITE-UNREAD
突出顯示任何前移後的第一個新行。
-x [N[,...]] --tabs=[N[,...]]
設置製表符的位置。
-X ........ --no-init
不使用 termcap init/deinit 字元串。
-y [N] .... --max-forw-scroll=[N]
向前滾動的限制。
-z [N] .... --window=[N]
設置視窗的大小。
-" [c[c]] . --quotes=[c[c]]
設置外殼引號字元。
-~ ........ --tilde
不在文件結尾處顯示蒂爾德。
-# [N] .... --shift=[N]
設置水平滾動量(0=二分之一屏幕寬度)。
--file-size
自動確定輸入文件的大小。
--follow-name
如果輸入文件被重新命名,F命令會改變文件。
--incsearch
在輸入每個模式字元時搜索文件。
--line-num-width=N
將-N行號欄位的寬度設置為N個字元。
--mouse
啟用滑鼠輸入。
--no-keypad
不發送termcap鍵盤初始/退出字元串。
--no-histdups
從命令歷史中刪除重覆的命令。
--rscroll=C
設置用於標記截斷行的字元。
--save-marks
在調用less的過程中保留標記。
--status-col-width=N
將-J狀態欄的寬度設置為N個字元。
--use-backslash
後面的選項使用反斜杠作為轉義符。
--use-color
啟用彩色文本。
--wheel-lines=N
每點擊一次滑鼠滾輪,就會移動N行。
LINE EDITING(行編輯)
這些鍵可以用來編輯正在輸入的文本
在屏幕底部的 "命令行 "上編輯文本。
RightArrow ..................... ESC-l ... 將游標向右移動一個字元。
LeftArrow ...................... ESC-h ... 將游標向左移動一個字元。
ctrl-RightArrow ESC-RightArrow ESC-w ... 將游標向右移動一個字。
ctrl-LeftArrow ESC-LeftArrow ESC-b ... 將游標向左移動一個字。
HOME ........................... ESC-0 ... 將游標移至行首。
END ............................ ESC-$ ... 將游標移至行尾。
BACKSPACE ................................ 刪除游標左邊的字元。
DELETE ......................... ESC-x ... 刪除游標下的字元。
ctrl-BACKSPACE ESC-BACKSPACE ........... 刪除游標左側的單詞。
ctrl-DELETE .... ESC-DELETE .... ESC-X ... 刪除游標下方的字。
ctrl-U ......... ESC (MS-DOS only) ....... 刪除整行。
UpArrow ........................ ESC-k ... 檢索前一個命令行。
DownArrow ...................... ESC-j ... 檢索下一個命令行。
TAB ...................................... 完成文件名和迴圈。
SHIFT-TAB ...................... ESC-TAB 完成文件名和反向迴圈。
ctrl-L ................................... 完成文件名,列出所有文件。