linux基本功系列之more命令实战

2,914 阅读4分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 23天,点击查看活动详情

前言

又要开始学习新的命令了,有没有一点点兴奋,先整个名人名言我们就开始:

在这里插入图片描述

算了,我们还是直接进入正题把,今天一起来聊聊: more这个命令,越学越觉的很多命令的参数都很相似有没有。


`

一、more命令的介绍

more的音标一定要会:

在这里插入图片描述

less is more , 少即是多,不追求速成,一点点学习,一点点成长,一起加油。

linux系统中的more命令和cat命令差不多,都是来查看文件内容,但cat命令是整个文件内容一股脑的出现在屏幕上。

对于短文本还好,长文本用cat,内容都是闪现,像下面这样一闪而过。

在这里插入图片描述

而 more 是一个基于VI编辑器的文本过滤器,会以全屏幕的方式按页显示文本文件的内容。 你可以上下翻页,也可以搜索,这种掌控感是不是很爽。

二、more的常用参数

2.1. 常用参数

+n   从笫n行开始显示。
-n   定义屏幕大小为n行。
     +/pattern   在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示。
-c   从顶部清屏,然后显示。
-d   提示“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能。
-l   忽略Ctrl+l(换页)字符。
-p   通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似。
-s   把连续的多个空行显示为一行。
-u   把文件内容中的下画线去掉。

2.2 操作指令

more命令与其他命令不同的地方在于,他除了基本的参数外,还有一些常用的操作指令:

我们先来看基本的参数:

操作功能说明
空格键代代表向下翻一页
ENTER代表向下翻N行,需要定义,默认为1行
q代表退出,不在显示文本内容
ctrl+F表示向下滚动一屏
Ctrl+B返回上一屏
=输出当前的行号
:f输出当前的文件名和当前的行号
!命令调用shell并执行命令
v调用vi编辑器
u不显示下划线
d在每屏的底部显示友好的提示信息
c从顶部开始清屏

这上述内容中最常用的有以下几个:

最常用的:

空格键 显示下一屏。

Enter键 显示下一行。

nf 向下移动n屏,其中n是数字。

nb 向上移动n屏,其中n是数字。

/模式 向下查找指定的字符串模式。

= 显示当前的行号。

h 显示more所有命令的帮助信息。

q 退出more

三. 常见示范案例

3.1 显示文件中从第三行起的内容

从第几行起,我们就在第几行前面加上数字number即可,比如本题目中要求是第三行,那就是+3

[root@mufenggrow test]# more +3 /etc/passwd

3.2 从文件中查找字符串bin,并从该处前两行开始输出

[root@mufenggrow ~]# more +/mufenggrow passwd

输出结果 在这里插入图片描述 当然这个图片里是我提前在sync这一样写上了mufenggrow,便于测试。

3.3 设定每行的屏幕显示行数

设定显示的行数: 比如6行就是-6 在这里插入图片描述

3.4 查看当前目录下的文件并用分页显示

在这里插入图片描述 |符号是管道符,用于把|前的输出作为后面命令的输入。每页显示5个文件信息,按 Ctrl+F 或者 空格键 将会显示下5条文件信息。

3.5 先清屏随后每次10行内容显示文本内容

此时用到 -c 参数 -c表示清屏, 显示10行就是 -10,所以代码如下:

[root@master-21 ~]# more -c -10 docker-ce.repo
[docker-ce-stable]
name=Docker CE Stable - $basearch
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/$releasever/$basearch/stable
略
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/$releasever/debug-$basearch/s
--More--(18%)

3.6 分页显示时,遇到连续两行以上空白行,则以一行显示

此时用到 -s参数

[root@master-21 ~]# more -s docker-ce.repo

四. more和less以及cat的区别:

more: 显示更多的意思 less: 由于more不能后退,就取more的反义词less加上后退功能

所以less其实就是增加了更多功能的more。相较而言:

  • less可以按键盘上下方向键显示上下内容,more不能通过上下方向键控制显示
  • less不必读整个文件,加载速度会比more更快
  • less退出后shell不会留下刚显示的内容,而more退出后会在shell上留下刚显示的内容

有小伙伴提到了cat, cat是把整个命令显示到屏幕上,适合于文本少的内容,文本太多会导致翻好几屏找不到自己想要的内容。


总结

以上就是more命令常见的使用方法,若有更好的用法可以评论区留言。