首页/系统/Linux 运维命令速查/grep 正则:BRE / ERE / PCRE / 固定串
本包目录(613 条)
文件与目录76 条
文本处理77 条
网络命令82 条进程与作业69 条磁盘与文件系统51 条用户与权限44 条日志与排查40 条systemd 与服务42 条包管理34 条性能与监控48 条定时任务与计划50 条

grep 正则:BRE / ERE / PCRE / 固定串

grep 默认基本正则(BRE),-E 用扩展正则、-P 用 PCRE、-F 按固定字符串(最快)——选对模式层级很关键。

Linux 运维命令速查系统更新于 2026-10-12
模式默认 BRE:+ ? | 需转义;-E ERE:直接写量词;-P PCRE:\d 前瞻;-F 固定串
锚点^ 行首 $ 行尾 [[:digit:]] 字符类
语法grep [-E|-F|-P] 模式 文件

常用示例

常用示例
grep -E 'error|warn|fail' app.log
grep -E '^[0-9]{4}-[0-9]{2}-[0-9]{2}' app.log
grep -oP '(?<=user=)[^ ]+' app.log      # 后向断言提取
grep -F 'a.b(c)' file                   # 按字面量搜索,不懂正则
固定串优先 -F:不解释正则、速度最快,搜含特殊符号的字符串时也最不容易写错。

易错点

  • 把 -E 语法直接用在默认模式里必然踩坑:+ 与 | 在 BRE 下是普通字符,看不出错但匹配不上
  • -P 不是所有平台都编译支持(BSD grep 无 -P),跨平台脚本慎用

数据来源与参考

  • man 1 grep(GNU grep 手册)
  • POSIX 基本/扩展正则表达式规范(POSIX.1-2017)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌