每天一个linux命令(12):more 命令

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

1.命令格式:

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

2.命令功能:

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

3.命令参数:

+      笫n行开始显示

-n       定义屏幕大小为n行

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

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

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

-l       忽略Ctrl+l(换页)字符。more usually treats ^L (form feed) as a special character, and will pause after any line that contains a form feed.    

     The -l option will prevent this behavior.

-f       Causes more to count logical, rather than screen lines (i.e., long lines are not folded).

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

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

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

4.常用操作命令:

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

Ctrl+F   向下滚动一屏

空格键  向下滚动一屏

Ctrl+B  返回上一屏(没有用哟)

=       输出当前行的行号

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

V       调用vi编辑器

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

q       退出more

补充Manual:

 

Interactive commands for more are based on vi(1).  Some commands may be preceded by(以……为先导) a decimal number, called k in the descriptions below.  In the following descriptions, ^X means control-X. 

/pattern    Search for kth occurrence of regular expression.  Defaults to 1.

n           Search for kth occurrence of last r.e.  Defaults to 1.

'           Go to place where previous search started.

.           Repeat previous command

:n          Go to kth next file.  Defaults to 1.

:p          Go to kth previous file.  Defaults to 1.

 

      5.命令实例:

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

命令:

more +3 log2012.log

输出:

[root@localhost test]# cat log2012.log 

2012-01

2012-02

2012-03

2012-04-day1

2012-04-day2

2012-04-day3

 

======[root@localhost test]# more +3 log2012.log 

2012-03

2012-04-day1

2012-04-day2

2012-04-day3

 

======[root@localhost test]#

 

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

命令:

 more +/day3 log2012.log

输出:

[root@localhost test]# more +/day3 log2012.log 

...skipping

2012-04-day1

2012-04-day2

2012-04-day3

2012-05

2012-05-day1

 

======[root@localhost test]#

 

实例3:设定每屏显示行 

命令:

more -5 log2012.log

输出:

[root@localhost test]# more -5 log2012.log 

2012-01

2012-02

2012-03

2012-04-day1

2012-04-day2

说明:

如下图所示,最下面显示了该屏展示的内容占文件总行数的比例,按 Ctrl+F 或者 空格键 将会显示下一屏5条内容,百分比也会跟着变化。

实例4:列一个目录下的文件,由于内容太多,我们应该学会用more来分页显示。这得和管道 | 结合起来 

命令:

ls -l  | more -5

输出:

[root@localhost test]#  ls -l  | more -5

总计 36

-rw-r--r-- 1 root root  308 11-01 16:49 log2012.log

-rw-r--r-- 1 root root   33 10-28 16:54 log2013.log

-rw-r--r-- 1 root root  127 10-28 16:51 log2014.log

lrwxrwxrwx 1 root root    7 10-28 15:18 log_link.log -> log.log

-rw-r--r-- 1 root root   25 10-28 17:02 log.log

-rw-r--r-- 1 root root   37 10-28 17:07 log.txt

drwxr-xr-x 6 root root 4096 10-27 01:58 scf

drwxrwxrwx 2 root root 4096 10-28 14:47 test3

drwxrwxrwx 2 root root 4096 10-28 14:47 test4

 

说明:

  每页显示5个文件信息, Ctrl+F 或者 空格键 将会显示下5条文件信息。

posted @ 2013-10-28 11:51  蓝海孤舟  阅读(170)  评论(0)    收藏  举报