Linux grep正则表达式

本文概述

  • 匹配图案的打印线
  • 串联字符
  • 非此即彼
  • 一个或多个/零个或多个
  • 匹配字符串的结尾
  • 匹配字符串的开头
  • 分词
grep工具具有以下使用正则表达式的选项:
  • -E:将字符串读取为ERE(扩展正则表达式)
  • -G:将字符串读取为BRE(基本正则表达式)
  • -P:将字符串读取为PRCE(Perl正则表达式)
  • -F:从字面上读取字符串。
匹配图案的打印线 grep命令将搜索与指定模式匹配的行。
句法:
grep < pattern> < fileName>

例:
grep t msg.txtgrep l msg.txtgrep v msg.txt

Linux grep正则表达式 查看上面的快照, 将显示所有匹配的图案行, 并突出显示图案。
串联字符 如果图案是由多个字符组成的, 则必须按原样进行匹配, 才能显示该行。
例:
grep tp msg.txtgrep in msg.txtgrep is msg.txt

Linux grep正则表达式 查看上面的快照, 将显示与指定模式完全匹配的行。
非此即彼 在这里, 竖线(|)符号用作OR, 以表示一个或另一个。显示了所有三个版本。选项-E和-P语法相同, 但-G语法使用(\)。
句法:
grep < option> < 'pattern|pattern> < fileName>

例:
grep -E 'j|g' msg.txtgrep -P 'j|g' msg.txtgrep -G 'j\|g' msg.txt

Linux grep正则表达式 查看上面的快照, 应该匹配模式” j” 或” g” 以显示行。
一个或多个/零个或多个 *表示模式出现0次或多次, +表示模式出现一次或多次。
句法:
grep < option> < 'pattern*'> < fileName>

例:
grep -E '1*' listgrep -E '1+' list

Linux grep正则表达式 【Linux grep正则表达式】查看上面的快照, *字符显示模式” 1″ 出现零次或多次。但是+字符显示一次或多次出现。
匹配字符串的结尾 为了匹配字符串的结尾, 我们使用$符号。
句法:
grep < pattern> $ < fileName>

例:
grep r$ dupli.txtgrep e$ dupli.txt

Linux grep正则表达式 查看上面的快照, 显示的行与字符串的末尾匹配。
匹配字符串的开头 为了匹配文件的开头或开头, 我们使用脱字符号(^)。
句法:
grep ^< pattern> < fileName>

例:
grep ^o dupli.txt

Linux grep正则表达式 查看上面的快照, 显示的行与字符串的开头或开头匹配。
分词 句法:
grep '\b< pattern> \b' < fileName>

例:
grep '\bsome\b' file

Linux grep正则表达式 看上面的快照, 通过给命令” grep some file” , 将显示所有与单词” some” 匹配的行。但是, 通过给命令” grep’ \ bsome \ b’ file” , 则仅显示匹配单词” some” 的行。 。
注意:这也可以在-w选项的帮助下完成。
句法:
grep -w < pattern> < fileName>

例:
grep -w some file

Linux grep正则表达式 查看上面的快照, 命令” grep -w some file” 显示与\ b字符相同的结果。

    推荐阅读