0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

egrep和grep两个常用的命令区别在哪?

全栈芯片工程师 来源:全栈芯片工程师 2023-07-08 10:01 次阅读

egrep 和 grep 是两个常用的命令行工具,用于在文本文件中搜索匹配某个模式的行。它们的主要区别在于正则表达式的语法支持。

grep 是 "global regular expression print" 的缩写,它使用基本正则表达式(Basic Regular Expression,BRE)语法。在 grep 中,一些特殊字符(如 +、?、() 等)需要使用反斜杠进行转义才能表示其字面意义。例如,要匹配一个重复的字符,你需要使用 {n} 来表示。例如,要匹配连续的3个小写字母 "a",你可以使用 grep 'a{3}' file.txt。

egrep 是 "extended grep" 的缩写,它使用扩展正则表达式(Extended Regular Expression,ERE)语法。在 egrep 中,你可以直接使用特殊字符而无需转义。它支持更多的元字符和语法,例如 +、?、() 等。使用 egrep,可以更简洁地表示模式。例如,要匹配连续的3个小写字母 "a",你可以使用 egrep 'a{3}' file.txt。

除了正则表达式语法的区别外,egrep 和 grep 的其他功能基本相同。它们都可以搜索文件中的匹配行,并支持各种选项和标志,如忽略大小写、显示行号等。总结起来,egrep 提供了更强大和方便的正则表达式语法,而 grep 使用的是基本的正则表达式语法。如果你需要使用更复杂的正则表达式模式,建议使用 egrep。如果只需要基本的模式匹配,grep 可能就足够了。

以下是一些常用的egrep命令示例:

在文件中搜索单词 "example":

egrep 'example' file.txt

搜索以字母 "a" 开头的行:

egrep '^a' file.txt

搜索以字母 "a" 结尾的行:

egrep 'a$' file.txt

搜索以 "apple" 或 "orange" 开头的行:

egrep '^(apple|orange)' file.txt





审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 字符串
    +关注

    关注

    1

    文章

    552

    浏览量

    20134
  • CMD命令行
    +关注

    关注

    0

    文章

    2

    浏览量

    5416

原文标题:你用egrep还是grep?

文章出处:【微信号:全栈芯片工程师,微信公众号:全栈芯片工程师】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    请问图中这两个参数的区别在哪里?

    下面两个图都是一函数的同一参数。种设置方式,想知道者的区别在哪里?第一种,簇里面的元素s
    发表于 08-28 15:40

    种整流桥电路图原理图的区别在哪里?

    种整流桥电路图原理图的区别在哪里?
    发表于 10-22 11:32

    linux下的grep命令有什么区别

    下面两个命令有什么区别1.grep . "abc" *2.grep . "abc"
    发表于 09-17 16:59

    请问ADP1720和ADP3300的区别在哪

    我需要驱动一5V,30mA的负载,现在选了两个LDO用来驱动负载,分别是ADP1720和ADP3300,两个都是5V输出,50mA的电流输出,我想问这两个芯片的
    发表于 09-19 10:26

    12 Linux 中 grep 命令的超级用法实例

    grep命令中使用选项-E来启用它。$ sudo grep -E12.搜索一固定匹配字符串fgrep用于在一文件或文件列表中搜索固定样
    发表于 05-12 08:00

    linux grep命令详解

    'energywise'行的文件,但是不显示匹配的行,只显示匹配的文件  这几个命令很使用,是查找文件的利器。  grep与正规表达式  字符类  字符类的搜索:如果我想要搜寻 test 或 taste 这两个单字
    发表于 03-31 10:05

    JTAG和SWD的区别在哪

    JTAG和SWD的区别在哪?USART和UART的区别在哪
    发表于 10-08 09:01

    sizeof和strlen函数的区别在哪

    野指针是指指针指向的位置是不可知的,主要成因是什么?sizeof和strlen函数的区别在哪?链表和数组的区别在哪
    发表于 12-24 07:19

    grep学习笔记

    使用正则表达式搜索文本,并把匹配的行打印出来。Unix的grep家族包括grepegrep和fgrep。egrep和fgrep的命令只跟
    发表于 11-07 15:37 7次下载

    Linux在在文件中查找文本的Grep命令

    grep命令是(global regular expression print,全局正则表达式输出)的缩写,它是Linux中功能最强大且最常用命令之一。
    的头像 发表于 06-21 12:06 2895次阅读

    RTK和GPS定位的区别在哪里?

    RTK和GPS定位的区别在哪里?
    发表于 05-08 10:08 76次下载

    串口屏和并口屏的区别在哪

    串口屏还是并口屏好用?区别在哪里?
    的头像 发表于 01-23 09:53 8332次阅读

    grep命令常用的选项详解

    说明:在Rocky8系统中,grep默认帮我们把匹配到的字符串标注了红色,这点还是挺贴心的。其实大家可以用which命令看一下grep,你会发现grep其实是
    的头像 发表于 11-30 11:43 3348次阅读

    如何使用grep命令

    grep命令的全称是全局正则表达式打印,它是Linux中功能最强大且最常用命令之一。
    的头像 发表于 12-06 16:43 1683次阅读

    梯形丝杆和滚珠丝杆的区别在哪里?

    梯形丝杆和滚珠丝杆的区别在哪里?
    的头像 发表于 03-28 17:48 1343次阅读
    梯形丝杆和滚珠丝杆的<b class='flag-5'>区别在哪</b>里?