这是我参与11月更文挑战的第29天,活动详情查看:2021最后一次更文挑战
命令简介
类似于 more
命令,less
命令也是一个分页显示程序,用于逐页显示指定的输入文件。但功能更强大。less
的用法比起 more
更加的有弹性。在 more
的时候,我们并没有办法向前面翻,只能往后面看,但若使用了 less
时,就可以使用 [pageup]
[pagedown]
等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!除此之外,在 less
里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜,而且 less
在查看之前不会加载整个文件。
命令格式
less [参数] 文件
命令参数
参数 | 解释 |
---|---|
-a,--search-skip-screen | 表示从当前屏幕的最后一行之后开始检索,从而跳过当前显示的所有数据行。通常,检索是从当前屏幕的第二行开始检索的。 |
-b size,--buffers=size | 指定 less 处理每一个输入文件时使用的缓冲区空间数量(单位为 KB)。 |
-B,--auto-buffers | 通常,当读取的数据来自管道时,缓冲区空间是根据需要自动分配的。 |
-c,--clear-screen | 从第一行开始逐行向下刷新屏幕。通常,整屏刷新是从屏幕底部逐行向上滚动实现的。 |
-e,--quit-at-eof | 令 less 在第二次遇到文件结束符时自动退出 less 命令。通常,只有使用 q 命令一种方法才能退出 less 命令。 |
-E,--QUIT-AT-EOF | 令 less 在第一次遇到文件结束符时就立即自动退出 less 命令。 |
-f,--force | 强制打开目录或设备特殊文件等非普通文件。也禁止在打开二进制文件时发出警告信息。通常,less 会拒绝打开非普通文件。 |
-F,--quit-if-one-screen | 令 less 在第一屏即可显示整个文件时自动退出 less 命令。 |
-g,--hilite-search | 通常,less 会高亮显示匹配最近一个检索命令的所有字符串。 |
-G,--HILITE-SEARCH | 禁止高亮显示检索命令发现的所有字符串。 |
-h n,--max-back-scroll=n | 指定向后(文件前部)滚动的最大行数。如果屏幕后滚超过 n 行,以前移的方向刷新屏幕。 |
-i,--ignore-case | 表示检索时忽略大小写字母的差异。但是,如果指定的检索模式中含有大写字母,将会忽略此选项,即检索时仍然区别大小写字母。 |
-I,--IGNORE-CASE | 类似于 -i 选项,但即使指定模式中含有大写字母,检索时仍然忽略大小写字母的差异。 |
-j n,--jump-target=n | 指定“目标”行的屏幕位置。“目标”行可以是匹配检索模式的行,以及直接跳转或按百分比跳转的行。 |
-J,--status-column | 在屏幕左边显示一个状态列。状态列将会显示匹配当前检索的数据行。 |
-K,--quit-on-intr | 当按下中断键(Ctrl-C 组合键)时能够立即退出 less 命令。通常,中断键不能终止 less 命令,只是返回到命令提示模式。 |
-m,--long-prompt | 令 less 采用与 more 同样的提示方式,如显示已读文件的百分比等。 |
-M,--LONG-PROMPT | 令 less 采用与 more 同样的提示方式,且显示更多的提示信息。 |
-n,--line-numbers | 禁止显示行号。使用行号的默认做法会降低 less 的运行速度,尤其是在处理大型输入文件时。禁止显示行号将会避免这个问题。 |
-N,--LINE-NUMBERS | 在输出的每行数据之前插入一个行号。 |
-o logfile,--log-file=logfile | 在查阅文件的同时,把输入数据复制到指定的文件。仅当输入文件是管道文件(而非普通文件)时,才能使用这个选项。如果指定的文件已经存在,在覆盖文件之前,less 会提请用户确认。 |
-O logfile,--LOG-FILE=logfile | 类似于“-o”选项,但即使指定的文件存在,覆盖之前也不会提请用户确认。 |
-q,--quiet,--silent | 采用适度的“安静”操作方式。除非出现错误,禁止终端发出警示音。 |
-Q,--QUIET,--SILENT | 采用彻底的“安静”操作方式,完全禁止终端发出任何警示音。 |
-r,--raw-control-chars | 以“原始”的方式显示不可打印字符,而通常是以控制字符的形式显示不可打印字符。 |
-s,--squeeze-blank-lines | 把多个连续的空行合并为一个空行。 |
-S,--chop-long-lines | 截断而非延续超长的数据行。默认的处理方式是把超长的数据行延续到下一行显示。 |
-u,--underline-special | 如果输入文件中存在退格符与回车,按可打印字符处理,即不加任何处理地直接送到终端。 |
-U, --UNDERLINE-SPECIAL | 如果输入文件中存在退格符、制表符与回车字符,按控制字符处理,即按照 -r 选项的做法处理输入文件中的退格符、制表符和回车字符。 |
-w,--hilite-unread | 在前滚一个满屏后临时高亮显示第一个“新”行。第一个“新”行是指紧随前一屏最后一行的数据行。 |
-W,--HILITE-UNREAD | 类似于-w 选项,高亮显示第一个“新”行,不管是满屏前滚,还是大于一行的多行前移。 |
-y n,--max-forw-scroll=n | 指定向前(文件后部)滚动的最大行数。如果屏幕前滚超过 n 行,重新刷新屏幕。如果需要,可以使用 -c 选项从上到下刷新屏幕。通常,任何前移都会引起屏幕滚动。 |
-[z]n,--window=n | 使用指定的行数 n 作为窗口滚动的默认行数。默认的行数是一个满屏的行数。 |
-#[n],--shift=[n] | 指定左右箭头命令横向滚动的默认列数。 |
-- | 命令行选项结束标志。紧随其后的任何参数均按文件名解释。 |
+ | 如果某个命令行选项的首字符是加号“+”,紧随其后的字符实际上是 less 的一个内部命令,也是运行 less 命令后执行的第一个内部命令。 |
-?,--help | 类似于内置命令 h,显示 less 命令的内置命令、命令选项及其简单说明等帮助信息。 |
-V,--version | 显示命令的版本与版权等信息,然后退出。 |
应用实例
- 查看文件
less log.log
ps
查看进程信息并通过less
分页显示
ps -ef |less
常用导航命令
-
全屏导航:
ctrl + F
:向前移动一屏ctrl + B
:向后移动一屏ctrl + D
:向前移动半屏ctrl + U
:向后移动半屏
-
单行导航:
j
:向前移动一行k
:向后移动一行
-
其它导航:
G
:移动到最后一行g
:移动到第一行q/ZZ
:退出less
命令
-
其它有用的命令:
v
:使用配置的编辑器编辑当前文件h
:显示less
的帮助文档&pattern
:仅显示匹配模式的行,而不是整个文件
-
标记导航当使用
less
查看大文件时,可以在任何一个位置作标记,可以通过命令导航到标有特定标记的文本位置:ma
:使用 a 标记文本的当前位置‘a
导航到标记 a 处
参考文档
- less命令示例
- 《Linux 常用命令简明手册》—— 邢国庆编著