Linux 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--
复制代码

posted on 2017-06-02 10:53  天涯尘星  阅读(5741)  评论(0编辑  收藏  举报

导航