正则表达式就是一个字符串,有一定的规律。
使用工具:grep、sed、awk。
grep
--color 显示颜色
-n 显示行号
-c 显示行数
-v 取反
-A 数字 显示符合行,同时显示符合行下面的n条行
-B 数字 显示符合行,同时显示符合行上面的n条行
-C 数字 显示符合行,同时显示符合行各上下面的n条行
-r 遍历目录
-h 遍历目录时,结果不显示文件名,和-r一起连用
-i 不区分大小写
grep 主要用于过滤包含字符的所在行。
[root@wy ~]# grep 'root' /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
显示颜色和行号
显示符合的行数
[root@wy ~]# grep -c 'root' /etc/passwd
2
显示符合行并同时显示符合行下面的n条行
显示符合行并同时显示符合行上面的n条行
显示符合行并同时显示符合行各上下面的n条行
过滤不包含此字符的
过虑包含数字的
过滤包含指定字符的
[root@wy ~]# grep --color '[yN]' /etc/passwd
过虑所有字母的
[root@wy ~]# grep '[a-zA-Z]' /etc/passwd
匹配以字母开头的行
匹配以数字开头的行
[root@wy ~]# grep --color '^[0-9]' /etc/passwd
匹配不包含数字的行'[^0-9]'
匹配不以数字开头的行
匹配空行
[root@wy ~]# grep '^$' /etc/passwd
. 表示任意一个字符
*表示0个或多个*前面的字符
.*任意字符(贪婪匹配)
?表示0或1个问号前面的字符(得用\先脱义一下)
但不想用脱义符,可以加-E选项,一样的效果(grep -E==egrep)
注:如果vim编辑文件时异常退出了,还在vim界面下,会产生一个临时的swp的文件,可以把它删掉。
+ 表示1个或多个加号前面的字符(+也是特殊字符,也需要转义,可以使用egrep不需要转义)
| 表示或者
表示并且不能用&,只能这样写
()表示括号里的是一个整体
(){}表示一个范围,指定次数
总结:? + | () {} 这些特殊符号需要脱义