grep egrep(文本过滤) fgrep(不支持正则)
格式 grep [选项] 模式 文件
选项:--color 指定颜色
-v反向匹配,显示不能被模式匹配到的行
-o:仅匹配被模式匹配到的字符串,而非整行
-q:静默模式
-i:不区分大小写
-E:支持扩展(相当于egrep)
正则表达式
分为基本正则表达式(BRE)和扩展正则表达式(ERE)
元字符:类似通配符,不表示字符本身的意义,用于额外功能性的描述
基本正则表达式的元字符:(出现需要用引号引起来,单引号也可以解释元字符,但不可变量替换)
.:任意单个字符
[]:指定范围内的任意单个字符
[0-9],[[:digit:]]:匹配数字
[a-z],[[:lower:]]:匹配小写字母
[A-Z],[[:upper:]]:匹配大写字母
所有的字母:[[:alpha:]] [a-Z]
字母+数字:[[:alnum:]] [0-Z]
空格:[[:space:]] 简化写法 [ ]
标点符号:[[:punct:]]
[^]: 指定范围外的任意单个字符
次数匹配:用来指定匹配其前面的字符的次数
*:任意次
.*:匹配任意长度的任意字符
\?:前面字符出现0次或者1次的
\+:前面字符至少一次
\{m\}:匹配m次
\{m,n\}:至少m次,至多n次
\{m,\}:至少m次 \{,n}:至多n次
egrep:扩展正则表达式
例子:egrep ‘[a-z]{1,3}[ ]{2}’ test.txt
位置锚定:用于指定字符出现的位置
^:锚定行首 $:锚定行尾 ^$:空白行