Linux中more和less命令用法

一、more命令

more功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上。 more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能 。more命令从前向后读取文件,因此在启动时就加载整个文件。

1.命令格式:

more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file ... ] 

2.命令功能:

more命令和cat的功能一样都是查看文件里的内容,但有所不同的是more可以按页来查看文件的内容,还支持直接跳转行等功能。

3.命令参数:

+n      从笫n行开始显示

-n       定义屏幕大小为n行

+/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示  

-c       从顶部清屏,然后显示

-d       提示“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能

-l        忽略Ctrl+l(换页)字符

-p       通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似

-s       把连续的多个空行显示为一行

-u       把文件内容中的下画线去掉

4.常用操作命令:

Enter    向下n行,需要定义。默认为1行

Ctrl+F   向下滚动一屏

空格键  向下滚动一屏

Ctrl+B  返回上一屏

=       输出当前行的行号

:f     输出文件名和当前行的行号

V      调用vi编辑器

!命令   调用Shell,并执行命令 

q       退出more

5.命令实例:

实例1:显示文件中从第3行起的内容

命令:

aijian.shi@U-aijian-shi:~/ALM$ cat test.log                   #显示所有日志内容
aijian.shi@U-aijian-shi:~/ALM$ more +3 test.log               #从第三行开始显示日志内容

输出:

复制代码

 1 aijian.shi@U-aijian-shi:~/ALM$ cat test.log
 2 2016-8-1 aijian.shi
 3 2016-8-2 yafang.wei
 4 2016-8-3 hong.zhan
 5 2016-8-4 yuyan.zhang
 6 2016-8-5 senlin.zhao
 7 2016-8-6 yanbin.liu
 8 2016-8-7 hui.liu
 9 2016-8-8 yanhua.liu
10 2016-8-9 baoixn.cui
11 2016-8-10 ge.song
12 2016-8-11 zhongjun.zhen
13 2016-8-12 qiu.liao
aijian.shi@U-aijian-shi:~/ALM$ more +3 test.log
2016-8-3 hong.zhan
2016-8-4 yuyan.zhang
2016-8-5 senlin.zhao
2016-8-6 yanbin.liu
2016-8-7 hui.liu
2016-8-8 yanhua.liu
2016-8-9 baoixn.cui
2016-8-10 ge.song
2016-8-11 zhongjun.zhen
2016-8-12 qiu.lia

复制代码

实例2.将日志内容设置为每屏显示4行

命令:

aijian.shi@U-aijian-shi:~/ALM$ more -4 test.log

输出:

复制代码

 1 aijian.shi@U-aijian-shi:~/ALM$ more -4 test.log
 2 2016-8-1 aijian.shi
 3 2016-8-2 yafang.wei
 4 2016-8-3 hong.zhan
 5 2016-8-4 yuyan.zhang
 6 
 7 ...skipping one line              #这里使用ctrl+F或者空格键来滚屏
 8 2016-8-6 yanbin.liu
 9 2016-8-7 hui.liu
10 2016-8-8 yanhua.liu
11 2016-8-9 baoixn.cui
12 
13 ...skipping one line
14 2016-8-11 zhongjun.zhen
15 2016-8-12 qiu.liao

复制代码

实例3.从文件中查找第一个出现"liu"字符串的行,并从该处前两行开始显示输出

命令:

aijian.shi@U-aijian-shi:~/ALM$ more +/liu test.log

 

输出:

复制代码

 1 aijian.shi@U-aijian-shi:~/ALM$ more +/liu test.log
 2 
 3 ...skipping
 4 2016-8-4 yuyan.zhang
 5 2016-8-5 senlin.zhao
 6 2016-8-6 yanbin.liu
 7 2016-8-7 hui.liu
 8 2016-8-8 yanhua.liu
 9 2016-8-9 baoixn.cui
10 2016-8-10 ge.song
11 2016-8-11 zhongjun.zhen
12 2016-8-12 qiu.liao

复制代码

实例4.当一个目录下的文件内容太多,可以用more来分页显示。这得和管道 | 结合起来

命令:

aijian.shi@U-aijian-shi:~/ALM$ cat test.log | more -5   #“|”表示管道,作用是可以将前面命令的输出当做后面命令的输入

输出:

复制代码

 1 aijian.shi@U-aijian-shi:~/ALM$ cat test.log | more -5
 2 2016-8-1 aijian.shi
 3 2016-8-2 yafang.wei
 4 2016-8-3 hong.zhan
 5 2016-8-4 yuyan.zhang
 6 2016-8-5 senlin.zhao
 7 
 8 ...skipping one line
 9 2016-8-7 hui.liu
10 2016-8-8 yanhua.liu
11 2016-8-9 baoixn.cui
12 2016-8-10 ge.song
13 2016-8-11 zhongjun.zhen
14 --more--

复制代码

 

 

二、less指令

less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。less 的用法比起 more 更加的有弹性。 在 more 的时候,我们并没有办法向前面翻, 只能往后面看,但若使用了 less 时,就可以使用 [pageup] [pagedown] 等按 键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!除此之外,在 less 里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。

1.命令格式:

less [参数]  文件 

2.命令功能:

less 与 more 类似,但使用 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:ps查看进程信息并通过less分页显示同时显示行号

命令:

aijian.shi@U-aijian-shi:~/ALM$ ps -ef|less -N

输出:

复制代码

 1       1 UID        PID  PPID  C STIME TTY          TIME CMD
 2       2 root         1     0  0 Aug08 ?        00:00:00 /sbin/init
 3       3 root         2     0  0 Aug08 ?        00:00:00 [kthreadd]
 4       4 root         3     2  0 Aug08 ?        00:00:02 [ksoftirqd/0]
 5       5 root         6     2  0 Aug08 ?        00:00:00 [migration/0]
 6       6 root         7     2  0 Aug08 ?        00:00:00 [watchdog/0]
 7       7 root         8     2  0 Aug08 ?        00:00:00 [migration/1]
 8       8 root         9     2  0 Aug08 ?        00:00:00 [kworker/1:0]
 9       9 root        10     2  0 Aug08 ?        00:00:01 [ksoftirqd/1]
10      10 root        11     2  0 Aug08 ?        00:00:00 [watchdog/1]
11      11 root        12     2  0 Aug08 ?        00:00:00 [migration/2]
12      12 root        14     2  0 Aug08 ?        00:00:01 [ksoftirqd/2]
13      13 root        15     2  0 Aug08 ?        00:00:00 [watchdog/2]
14      14 root        16     2  0 Aug08 ?        00:00:00 [migration/3]
15      15 root        18     2  0 Aug08 ?        00:00:01 [ksoftirqd/3]
16      16 root        19     2  0 Aug08 ?        00:00:00 [watchdog/3]
17      17 root        20     2  0 Aug08 ?        00:00:00 [migration/4]
18      18 root        22     2  0 Aug08 ?        00:00:00 [ksoftirqd/4]
19      19 root        23     2  0 Aug08 ?        00:00:00 [watchdog/4]
20      20 root        24     2  0 Aug08 ?        00:00:00 [migration/5]
21      21 root        26     2  0 Aug08 ?        00:00:00 [ksoftirqd/5]
22      22 root        27     2  0 Aug08 ?        00:00:00 [watchdog/5]
23      23 root        28     2  0 Aug08 ?        00:00:00 [migration/6]
24 :

复制代码

实例2.浏览多个文件

命令:

aijian.shi@U-aijian-shi:~/ALM$ less test2.log test.log

输出:

复制代码

 1     1  ifconfig
 2     2  ping www.baidu.com
 3     3  ifconfig
 4     4  //10.128.161.108/share
 5     5  10.128.161.108/share
 6     6  ssh
 7     7  keygen
 8     8  trsa
 9     9  ssh
10    10  .ssh/
11 
12 
13  test2.log (file 1 of 2) (END) - Next: test.log

复制代码

说明:

输入 :n后,切换到 test.log

输入 :p 后,切换到test2.log

ps:当正在浏览一个文件时,也可以使用 :e命令 打开另一个文件。

命令:

less file1

:e file2

 

5.附加备注

1.全屏导航

ctrl + F - 向前移动一屏

ctrl + B - 向后移动一屏

ctrl + D - 向前移动半屏

ctrl + U - 向后移动半屏

 

2.单行导航

j - 向前移动一行

k - 向后移动一行

 

3.其它导航

G - 移动到最后一行

g - 移动到第一行

q / ZZ - 退出 less 命令

 

4.其它有用的命令

v - 使用配置的编辑器编辑当前文件

h - 显示 less 的帮助文档

&pattern - 仅显示匹配模式的行,而不是整个文件

 

5.标记导航

当使用 less 查看大文件时,可以在任何一个位置作标记,可以通过命令导航到标有特定标记的文本位置:

ma - 使用 a 标记文本的当前位置

'a - 导航到标记 a 处

 

6.查找

more, less 都具备查找功能,按/ 然后输入要找的字串,再按 Enter 即可,按 n(next) 会继续找,大写的 N 则是往回(上)找,按 q(quit)或者ZZ离开

<think>嗯,用户问的是Linuxmoreless命令的区别用法。首先,我得回想一下自己知道的关于这两个命令的知识点,然后结合提供的引用资料来整理答案。 首先,moreless都是分页查看文件的工具,但具体有什么不同呢?记得以前用过more,当文件内容超过一屏时,more会分页显示,但只能向下翻页,不能往回看。而less更灵活,允许前后滚动,甚至搜索。这点在引用45里都有提到,特别是引用4说less可以向前翻页,使用PageUpPageDown,而more只能向后。 接下来要对比两者的功能。more的基本用法是分页显示,按空格下一页,但到文件末尾会自动退出。而less不会自动退出,需要用户手动按q退出。另外,less支持上下方向键逐行滚动,这在引用5里有说明。搜索功能方面,more只能向下搜索,而less支持向上向下搜索,引用45都提到了这一点。 再想想交互功能,比如more的快捷键可能比较少,而less有更多操作,比如跳转到行首、行尾,或者百分比跳转。这些高级功能在引用4里提到过。性能方面,大文件处理上less可能更高效,因为它不会一次性加载整个文件,这在引用4也有说明。 然后需要整理用法示例。more的常见用法包括分页显示、显示行号、从指定行开始等。而less用法包括分页显示、高亮搜索、显示行号、实时监控日志文件等。这些在引用25里都有例子。 最后,生成相关问题的时候,要考虑到用户可能还想知道其他查看命令如cat的区别,或者如何选择使用more还是less,以及高级搜索技巧。这些在提供的引用里也有涉及,比如引用13提到了cat的区别,可以引导用户进一步了解。 总之,要确保回答结构清晰,先概述区别,再分点详细说明,最后给出示例总结,帮助用户全面理解。同时,正确引用资料中的信息,比如引用45中的具体功能描述,确保答案准确可靠。</think>### Linux moreless命令的区别及使用方法 #### 一、核心区别概述 1. **导航能力** - `more`:仅支持**向下翻页**(空格键或回车键),无法回退查看已浏览内容[^4][^5]。 - `less`:支持**双向滚动**(上下方向键、PageUp/PageDown键),允许前后自由查看内容。 2. **文件加载方式** - `more`:一次性加载整个文件,适合中小文件[^3]。 - `less`:按需分块加载文件,更适合大文件处理。 3. **搜索功能** - `more`:仅支持**向下搜索**(输入`/关键词`后按`n`继续搜索)。 - `less`:支持**双向搜索**(`/`向下搜索,`?`向上搜索),并高亮匹配结果[^5]。 4. **退出行为** - `more`:浏览到文件末尾**自动退出**[^3]。 - `less`:必须通过`q`键手动退出。 --- #### 二、详细功能对比 | 功能 | more | less | |---------------------|--------------------------|--------------------------| | 行内滚动 | 仅支持回车逐行 | 支持上下方向键逐行 | | 百分比显示 | 不支持 | 支持(显示当前位置)| | 跳转指定行 | `more +n file` | `less +n file` | | 实时监控日志 | 不支持 | 支持(`less +F file`) | --- #### 三、具体使用示例 **1. more基础用法** ```bash # 分页查看文件(空格翻页,q退出) more filename.txt # 从第10行开始显示 more +10 filename.txt # 显示行号 more -n filename.txt ``` **2. less进阶操作** ```bash # 高亮搜索"error"(按n跳转下一个匹配项) less -p "error" filename.log # 查看实时更新的日志文件 less +F /var/log/syslog # 显示行号并标记特殊字符 less -N -J filename.txt ``` --- #### 四、使用场景建议 - 优先选择`less`:需**反复查看内容**或处理**大文件**时 - 选择`more`:仅需**快速浏览**且内容较短时[^3] ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值