1、grep, egrep, fgrep的区别
grep(global search regular expression and prind out the line)全称就叫全面搜索正则表达式并打印行出来,简单来说就是文本搜索工具,根据用户指定的文本搜索模式对目标文本进行搜索,显示能够所匹配的行,当然,也可以把grep看也是一个文本过虑器、模式匹配器。
egrep:使用扩展正则表达式来构建模式,相当于grep –E、通常写成egrep、用法基本上跟grep的相同、只是有些不需要 \ 转译。
fgrep:fash,它不解析正则表达式、想找什么就跟什么就可以了。
2、grep的常用选项
grep: 根据模式搜索文本,并将符合模式的文本行显示出来。
Pattern: 文本字符和正则表达式的元字符组合而成匹配条件。
grep [options] PATTERN [FILE...]
-i:不区分大小写对文本进行匹配搜索
--color:显示颜色
-v:显示没有被模式匹配到的行
-o:只显示被模式匹配到的字符串
-E: 使用扩展正则表达式
-A #:显示模式匹配到的行以及后面的N行 #代表你要显示多少行
-B #: 显示模式匹配到的行以及前面的N行
-C #:显示模式匹配到的行以及上下的N行
注意:
模式当中一但包含元字符一定要用’'或"“号引起来,单双引号都可以、只不过如果其中出现了变量、并且我们希望做变量替换的话那就要使用”"双引号了、否则可以不加区分的使用。
3、通配符
.(点号):匹配任意的单个字符的
[^]:表示指定范围外的任意单个字符、就是使用了脱字符取反
[]:指定范围内的任意的单个字符
[0-9] [[:digit:]]:表示匹配0到9的任意单个数字、两种表示方法都可以
[a-z] [[:lower:]]:表示匹配小写的a到z的任意单个字母、即a-z
[A-Z] [[:upp