当前位置: 首页 > news >正文

Linux命令-egrep命令(文本搜索工具)

练习平台

Linux-v86
Linux教程

说明

egrep 是 Linux/Unix 系统中一个非常强大的文本搜索工具,它使用扩展正则表达式来搜索文件中的文本模式。

下面这个表格帮你快速掌握 egrep 的核心要点和常用选项。

特性/选项说明
核心身份通常为 grep -E 的别名或符号链接
搜索模式扩展正则表达式,支持更丰富、书写更简洁的元字符
基本语法egrep [选项] '模式' 文件1 [文件2 ...]
-i忽略大小写进行匹配
-v反向匹配,只显示不包含模式的行
-n显示匹配行在文件中的行号
-c只显示匹配行的数量,不显示具体内容
-l只列出包含匹配项的文件名
-L只列出不包含匹配项的文件名
-r-R递归搜索指定目录及其所有子目录下的文件
-w强制模式匹配整个单词
-o只输出匹配模式的那部分文本,而不是整行
-A num显示匹配行及其后面 num
-B num显示匹配行及其前面 num
-C num显示匹配行及其前后各 num
--color=auto高亮显示匹配到的文本

✨ 关键特性:扩展正则表达式

egrep 的强大之处在于它支持扩展正则表达式,这意味着一些在基本正则表达式中需要转义的特殊字符,在 egrep 中可以直接使用,使得模式书写更简洁、易读 。

元字符含义示例示例说明
+匹配前一个字符1次或多次egrep 'go+d' file匹配 “god”, “good”, "gooood"等
?匹配前一个字符0次或1次egrep 'colou?r' file匹配 “color” 和 “colour”
``操作符,匹配其左边或右边的模式`egrep 'error
()将多个字符分组为一个单元egrep '(abc)+' file匹配 “abc”, “abcabc” 等
{}区间表达式,精确指定匹配次数egrep 'o{2,4}' file匹配连续2到4个"o",如"food", “fooood”

🛠️ 实用示例

  1. 搜索多个可能的结果
    在系统日志中查找包含“error”或“warning”的行,并显示行号和高亮匹配文本:

    egrep -n --color=auto 'error|warning' /var/log/syslog
    
  2. 统计匹配行数
    统计某个配置文件中非注释行(即不以#开头的行)的数量:

    egrep -c '^[^#]' /etc/someconfig.conf
    
  3. 递归搜索目录
    在当前目录及其所有子目录的.py文件中搜索“TODO”单词:

    egrep -rw 'TODO' --include='*.py' .
    
  4. 匹配特定格式的字符串
    查找所有格式为XXX-XX-XXXX的社会安全号码(简化示例):

    egrep '[0-9]{3}-[0-9]{2}-[0-9]{4}' data.txt
    

💡 注意事项

  • 引号的使用:强烈建议总是用单引号 ' 将正则表达式模式括起来,这可以防止 shell 解释模式中的特殊字符(如 $, !, * 等)。
  • 元字符的转义:如果你需要搜索上面列出的元字符(如 ., +, ?, |)本身的字面意义,需要在它们前面加上反斜杠 \ 进行转义。例如,搜索包含 a.txt 的行,应写为 egrep 'a\.txt' file,以防止点号被解释为任意字符 。
  • 现代系统中的 egrep:在绝大多数现代 Linux 系统中,egrep 命令本身通常是一个指向 grep -E 的符号链接,两者在功能上是完全等效的 。因此,你也可以直接使用 grep -E 来获得相同的功能。
http://www.dtcms.com/a/605748.html

相关文章:

  • 《Flutter全栈开发实战指南:从零到高级》- 14 -网络请求与数据解析
  • 模板网站配置文件seo难不难
  • div2 1052 个人补题笔记
  • 【1.10】基于FPGA的costas环开发4——鉴相器模块开发
  • C语言编译软件 | 如何选择适合自己的编译器
  • 怎么做网站外贸wordpress 本地 域名绑定
  • DSP中断工作原理
  • 【LeetCode】109. 有序链表转换二叉搜索树
  • Verilog 利用伪随机,时序,按键消抖等,实现一个(打地鼠)游戏
  • 【音视频】均衡器(Equalizer)技术详解
  • win11安装mysql社区版数据库
  • 菏泽定制网站建设推广花艺企业网站建设规划
  • 哪些网站可以做推广婚庆公司网站源码
  • LVS负载均衡群集(一) -- NAT模式
  • 【ZeroRnge WebRTC】RFC 8445:ICE 协议规范(中文整理与译注)
  • librtp 实现详解:仓颉语言中的 RTP和RTCP 协议库开发实践
  • Android http网络请求的那些事儿
  • 两台 centos 7.9 部署 pbs version 18.1.4 集群
  • 【动手学深度学习】8.1. 序列模型
  • 【AI软件开发】从文献管理到知识编织:构建AI驱动的学术研究工作流
  • 网站上面图片上传尺寸建设部二级结构工程师注销网站
  • PostIn从初级到进阶(3) - 如何对接口快速设计并管理接口文档
  • 按键精灵安卓/ios脚本开发辅助工具:yolo转换教程
  • 人工智能驱动下的OCR API技术演进与实践应用
  • 昆明网站建设介绍湛江专业雷剧全集
  • 网站到期时间营销型网站服务公司
  • 常用设计模式:工厂方法模式
  • 视频矩阵哪个品牌好?2025 视频矩阵品牌标杆出炉
  • MongoDB 分片
  • 网站访客qq获取苏州建网站公司