less(Unix)

本页使用了标题或全文手工转换,现处于中国大陆简体模式
本页使用了标题手工转换,涉及首字符小写
求闻百科,共笔求闻
less
Xterm中的less输出
Xterm中的less输出
开发者Mark Nudelman
首次发布1984年,​40年前​(1984[1]
稳定版本
590
(2021年7月10日,​2年前​(2021-07-10
预览版本
590
(2021年6月3日,​2年前​(2021-06-03
源代码库github.com/gwsw/less
编程语言C
操作系统跨平台
类型系统软件
许可协议双重授权GNU GPLv3与自订的BSD风格授权条款
网站www.greenwoodsoftware.com/less/
www.gnu.org/software/less/

lessUNIXMicrosoft Windows类Unix系统上的终端机标签页检视程序,用来一次用整个屏幕显示的范围展示(但不能编辑)文本文件的内容。其与more类似,但可以向前或向后浏览文件的延伸功能。与大多数的Unix文字编辑器或检视程序不同,less在启动时不会一次读取整个文件,如此可以加快大文件的加载速度。

历史

Mark Nudelman最初在1983至1985年间编写了less,当时是因为需要可以向后卷动显示文字的more。原本less是为Unix开发的,但是其已被移植到其他许多操作系统,其中包含了MS-DOSMicrosoft WindowsOS/2OS-9,以及如Linux等的类Unix系统[2]。Nudelman至今仍在维护它。

为了协助记住lessmore的不同,有个常见的笑话是"less > more",代表了less的功能比more更多。类似的说法是"less is more, more or less"(“少即是多,或多或少”)。

用法

可以传递选项给less以改变其行为,例如要在屏幕上显示的行数。部分选项可能会因操作系统而异。在less显示文件时,也可以使用多种指令来浏览文件。这些指令是以morevi使用的指令为基础。并可在文件中搜寻符合的字符模式。

预设情况下,less会将文件内容显示到标准输出(一次显示一个屏幕的范围)。如果省略文件名称参数,则其会显示来自标准输入的内容(通常是另一个指令透过管道的输出)。如果输入被重新导向到终端机以外的任何东西,例如另一个指令的管道,则此时less的行为会类似于cat

指令句法为:

less [选项] [档案名称]

常用选项

  • -g:仅突显任何搜寻字符串的目前符合项目。
  • -i:搜寻时不区分大小写。
  • -m:显示更详细的提示资讯,包含文件位置。
  • -N:显示行号(检视源代码时较有用)。
  • -x3:将定位停驻点(每个定位字符的栏数)设定为指定的数字(在此例中为3,检视源代码时较有用)。
  • -S:停用过长行的换行。较长的行可用横向卷动来检视。
  • -X:结束less时,将文件内容保留在屏幕上。
  • -?:显示说明。
  • --follow-name:跟随模式,用来检视输出中的纪录档。

常用指令

按键 指令
Space bar 下一页
d 下半页
b 前一页
u 前半页
v 编辑内容
j ↵ Enter 下ㄧ行
k 前ㄧ行
Home 文件顶部
End 文件结尾
F 跟随模式(供纪录档使用)。Follow Mode (for logs). Interrupt to abort.
g < 第一行
G > 最后ㄧ行
nG 跳到第n
/text 向前搜寻text。文字会被视为正则表达式
?text 如同/,但为向后搜寻。
n 下一个符合的搜寻结果
N 上一个符合的搜寻结果
Escu 关闭符合突显(请见-g命令行选项)
-c 切换选项c,例如-i会切换是否要在搜寻时忽略大小写
mc 设定标记c
'c 跳到标记c
= Ctrl+G 文件资讯
:n 下一个文件
:p 上一个文件
h 说明。这会使用less显示,q离开。
q 离开

范例

less -M readme.txt           # 读取 "readme.txt"
less +F /var/log/mail.log    # 供纪录档使用的跟随模式
file * | less                # 简易档案分析
less -I -g void *.c          # 在所有 .c 档案不区分大小写搜寻"void"

参见

参考资料

  1. Mark Nudelman. less, a paginator. 1985-06-02. 
  2. Less FAQ. [2021-07-17]. 

外部链接