六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下

时间:2022-02-09 13:54:23

9.1 正则介绍_grep上

grep过滤指定关键词,最简单的用法:grep ‘关键词’ 文件名,

-c行数

-n显示行号

-i不区分大小写

-v取反(过滤出不带关键词的行)

-r遍历所有子目录(如下图就是列出etc目录下所有含有root字符的内容)

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下

-A后面跟数字,过滤出符合要求的行以及下面n行

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下

-B后面跟数字,过滤出符合要求的行以及上面n行

-C后面跟数字,过滤出符合要求的行以及上下面n行

9.2 grep中

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下过滤出passwd文件里带有数字的行。

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下过滤出inittab文件里开头不带有#号的行。

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下过滤出inittab文件里非纯数字的行。(^放到方括号里面就是“取反”或者“非”的意思)

9.3 grep下

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下过滤出inittab文件里含有r.o的所有行。(点代表任意一个字符)

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下过滤出passwd文件里含有o或oo或ooo等所有行,(*号表示左边的字符重复多少次,如果是重复0次,那么就是一个o,因为还要加上右边的一个o)

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下过滤出passwd文件里含有任意一个字符重复任意次的行,(结果其实就是列出所有,“.*”代表所有的字符)

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下过滤出passwd文件里以aming开头,并且以bash结尾的行。

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下过滤出passwd文件里出现重复的两个o(就是oo)的行。{}表示前面字符的重复范围。

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下意思同上。

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下意思同上。

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下过滤出passwd文件里出现重复的两个oo(就是oooo)的行。小括号表示里面的是一个整体。

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下加号意思和*号差不多,不过*号是0-n次,而加号表示1-n次。

加号后面也可以跟其他字符:

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下问号表示前面的字符重复0次或者1次。

六周第一次课 2017.11.20 正则介绍_grep上、grep中、grep下竖线表示或者的意思。