3.2 正则表达式
本节提供有关正则表达式构造与匹配方式的概述。特别会提及 POSIX BRE 与 ERE 构造,因为它们想要将大部分 UNIX 工具里的两种正则表达式基本风格(flavors)加以正式化。
gerp
语法
grep [ options ... ] pattern-spec [ files ... ]
用途
显示匹配一个或多个模式的文本行。时常会作为管道( pipeline ) 的第一步,以便对匹配的数据做进一步处理。
主要选项
-E 使用扩展正则表达式进行匹配。grep -E 可取代传统的 egrep。
-F 使用固定字符串进行匹配。 grep -F 可取代传统的 fgrep 命令。
-e pat-list 通常,第一个非选项的参数会指定要匹配的模式。你也可以提供多个模式,只要将它们放在引号里并以换行符分隔它们。模式以减号开头,grep 会混淆,而将它视为选项。这就是 -e 选项派上用场的时候,它可以指定其参数为模式--即使它以减号开头。
-i 模式匹配时忽略字母大小写差异。
-l 列出匹配模式的文件名称,而不是打印匹配的行。
-q 静默地。如果模式匹配,则 grep 会成功地离开,而不将匹配的行写入标准输出;否则即是不成功。
-s 不显示错误信息。通常与 -q 并用。
-v 显示不匹配模式的行。
行为模式
读取命令行上指明的每个文件。发现匹配查找模式的行时,将它显示出来。当指明多个文件时, grep 会在每一行前面加上文件名与一个冒号。默认使用BRE。
警告
你可以使用多个 -e 与 -f 选项,建立要查找的模式列表。