一、less命令介绍
less命令用于显示文件或命令输出的内容,它一次只显示一个页面(分页显示工具)。它类似于more命令,但less具有更高级的功能,它允许您在文件中向前和向后导航。less命令主要用于打开大文件,less不会读取整个文件,相比于 vim 或 nano 等文本编辑器,加载时间会更快。less命令的语法格式如下:
less [OPTIONS] filename
当用less命令查看一个大文件时,通常1页显示不完,此时你会在命令窗口底部看到一个冒号(:),此时可以按上键或下键来显示上一行或下一行,也可以按b键或空格键来显示上一页或下一页。如果要向上或向下显示指定行,可以键入数字,然后跟b键或空格键。
回到第一行,可以键入g
定位到文件的第N行,可以键入Ng
定位到文件最后一行,可以键入G
此时如果要搜索某个字符串,可以键入/,然后键入要搜索的模式(正则表达式),按下回车,即可高亮显示搜索内容(按n或N键来显示下一个/上一个搜索到的内容)。
到达文件末尾时,字符串(END)显示在屏幕底部。要退出 less 并返回命令行,请按 q 。
less命令的常用选项如下:
选项 | 功能 |
-N | less命令显示行号 |
-X | 默认情况下,less退出时,将从屏幕中清除文件内容,如果要在屏幕上保留文件内容,可以使用-X选项 |
+F | +F选项告诉 less 您查看的文件内容可能会更改,这在打开日志文件时很有用(与tail -f几乎相同) |
二、less使用实例
【例1】使用管道符将ps命令的输出重定向到less命令:
➜ test ps -aux|less USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.0 204676 7012 ? Ss Jul07 6:07 /sbin/init nokaslr root 2 0.0 0.0 0 0 ? S Jul07 0:06 [kthreadd] root 4 0.0 0.0 0 0 ? I< Jul07 0:00 [kworker/0:0H] root 6 0.0 0.0 0 0 ? I< Jul07 0:00 [mm_percpu_wq] root 7 0.0 0.0 0 0 ? S Jul07 6:29 [ksoftirqd/0] root 8 0.0 0.0 0 0 ? I Jul07 50:39 [rcu_sched] root 9 0.0 0.0 0 0 ? I Jul07 0:00 [rcu_bh] root 10 0.0 0.0 0 0 ? S Jul07 0:16 [migration/0] root 11 0.0 0.0 0 0 ? S Jul07 0:15 [watchdog/0] root 12 0.0 0.0 0 0 ? S Jul07 0:00 [cpuhp/0] root 13 0.0 0.0 0 0 ? S Jul07 0:00 [cpuhp/1] root 14 0.0 0.0 0 0 ? S Jul07 0:14 [watchdog/1] root 15 0.0 0.0 0 0 ? S Jul07 0:19 [migration/1] root 16 0.0 0.0 0 0 ? S Jul07 2:06 [ksoftirqd/1] root 18 0.0 0.0 0 0 ? I< Jul07 0:00 [kworker/1:0H] root 19 0.0 0.0 0 0 ? S Jul07 0:00 [cpuhp/2] root 20 0.0 0.0 0 0 ? S Jul07 0:16 [watchdog/2] root 21 0.0 0.0 0 0 ? S Jul07 0:18 [migration/2] root 22 0.0 0.0 0 0 ? S Jul07 0:38 [ksoftirqd/2] root 24 0.0 0.0 0 0 ? I< Jul07 0:00 [kworker/2:0H] root 25 0.0 0.0 0 0 ? S Jul07 0:00 [cpuhp/3] root 26 0.0 0.0 0 0 ? S Jul07 0:15 [watchdog/3] root 27 0.0 0.0 0 0 ? S Jul07 0:19 [migration/3] root 28 0.0 0.0 0 0 ? S Jul07 0:36 [ksoftirqd/3] : # 此时只显示了1页,并没有显示完
【例2】使用less命令查看/etc/passwd内容,并显示行号
➜ test less -N /etc/passwd 1 root:x:0:0:root:/root:/bin/bash 2 daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin 3 bin:x:2:2:bin:/bin:/usr/sbin/nologin 4 sys:x:3:3:sys:/dev:/usr/sbin/nologin 5 sync:x:4:65534:sync:/bin:/bin/sync 6 games:x:5:60:games:/usr/games:/usr/sbin/nologin 7 man:x:6:12:man:/var/cache/man:/usr/sbin/nologin 8 lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin 9 mail:x:8:8:mail:/var/mail:/usr/sbin/nologin 10 news:x:9:9:news:/var/spool/news:/usr/sbin/nologin 11 uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin :
三、more命令介绍
我们在打开某些文本文件的时候,这些文件,可能会非常长,无法在一屏的空间内显示完全。所以,在查看这种文件时,我们需要分页显示。这时,我们就可以使用 more 命令。more命令的基本格式为:
more [OPTIONS] filename
more的常用选项如下表所示:
选项 | 功能 |
+N | 从指定行开始显示,例如从第100行开始显示:more +100 /etc/passwd |
-N | 限制每页显示的行数,例如我们一次只想查看10行:more -10 /etc/passwd |
-d | 在终端底部显示提示信息 |
-c |
禁止滚动,例如只想用10行来显示信息:more -10 -c /etc/passwd 从顶部清屏开始显示:more -c /etc/passwd |
例如,我们用more来查看/etc/passwd的内容,只需输入more /etc/passwd,执行结果如下图所示:
在终端的左下角,会显示已显示的文本内容在全文的占比情况。如果我们想要查看下一屏的内容,只需按空格键即可。翻页之后,我们也会看到左下角百分比相应增长。
more命令常用按键:
空格键:显示下一页
b:显示上一页
回车:显示下一行
q:退出
=:输出当前行的行号
四、more命令使用实例
【例1】从第50行开始显示文本内容:
➜ method more +50 data.txt ......
...... if h.Req.ResourceType <= room_common.ResourceType_Unknown { return util.NewBizErr(errno.BadRequest, "resource_type --More--(35%)