一、概述
1.grep作用:
过滤,查找文档中的内容
2.分类:
(1)grep:在文件中全局查找指定的正则表达式,并打印所有包含该表达式的行;
(2)egrep 支持扩展正则 egrep,支持更多的正则表达式元字符;
(3)fgrep 固定grep(fixed grep),有时也被称作快速(fast grep),不支持正则,它按字面解释所有字符。
3. 返回值 echo $?
(1)0 表示成功;
(2)1 表示在所提供的文件无法找到匹配的pattern;
(3)2 表示提供文件位置不对;
二、grep使用的元字符
1.grep:使用基本元字符集 ^, $, ., *, [], [^], \<\>, \(\), \+, \|
2.egrep(或grep -E):使用扩展元字符集 ?, +, {}, |, ()
注:grep也可以使用扩展集中的元字符,仅需要对这些元字符前置一个反斜线。
3.
(1)\w 所有字母与数字,称为字符[a-zA-Z0-9] ‘l[a-zA-Z0-9]*ve’ 等价于 ‘l\w*ve’
(2)\W 所有字母与数字之外的字符,称为非字符 ‘love[^a-zA-Z0-9]+’ 等价于 ‘love\W+’
(3)\b 词边界 ‘\<love\>’ 等价于 ‘\blove\b’
二、参数
1.grep -q 静默输出 (quiet)
2.grep -v 取反,选择不匹配的行
3.grep -R 可以查目录下面的文件,递归查询
4.grep -o 只找到这个关键字就可以
5.grep -Bn 过滤指定字段的前n行(B-before)
6.grep -An 过滤指定字段的后n行 (A-after)
7.grep -Cn 过滤指定字段的上下n行 (C-context上下文)
8.egrep -l 只要文件名
9.egrep -n 带行号