正则介绍 、grep、egrep工具

正则shell

一串有规律的字符串编程

掌握好正则对编写shell脚本有很大帮助工具

各类编程脚本中都有正则spa

grep sed awk3d

grep/egrep工具

格式: grep [-cinvABC] 'word' filenameblog

-c 打印符合要求的行的行数ci


-i 不区分大小写字符串

-n 显示行号awk

-v  打印不符合要求的行sed

-r 遍历全部子目录

-A 后面跟数字,例如-A2 表示打印符合要求的行以及下面两行

-B 后面跟数字,例如 -B2 表示打印符合要求的行以及上面两行

-C 后面跟数字,例如-C2 表示打印符合要求的行以及上下两行

grep/egrep用法示例:

过滤出带有某个关键词的行,并输出行号

过滤出不带有某个关键词的行,并输出行号

过滤出全部包含数字的行

过滤出全部不带数字的行,只要在上面命令中加上 -v 选项就行

过滤掉全部以#开头的行 符号 ^ 表示行的开始

过滤掉全部空行和以#开头的行

$表示行的结尾,空行就用 ^$ 表示

打印出除了符合中括号 [ ] 里的内容

 

过滤出任意一个字符和重复字符

符号 . 表示任意一个字符

符号 * 表示零个或多个前面的字符

.* 表示零个或多个任意字符,空行也包含在内

指定要过滤出的字符出现的次数

grep使用大括号 { } 要在大括号前使用脱义符号,不想使用脱义符号就要使用 -E 选项,或使用egrep

过滤出一个或多个指定的字符

符号 + 表示匹配1个或多个+前面的字符,grep使用 +也要在前面加脱义符号

过滤出零个或一个指定的字符 使用符号?

过滤出字符串1或字符串2 用符号 |

egrep中()的应用

()内是一个总体

t(ell|oo)表示把有tell 或too的行打印出来。

相关文章
相关标签/搜索