Linux-grep


grep :查找正则表达式
egrep或grep -E : 查找查找包括扩展元字符在内的正则表达式
fgrep:不解析正则表达式,只按字面意思查找

一 对于正则表达式的基本元字符grep和egrep是一样的

基本元字符: ^, $, ., *, [], [^] , \<, \>, 

在这里插入图片描述

二 对于正则表达式的扩展元字符egrep可以识别,但grep要在扩展元字符前加\才能识别

在grep中要使用这些扩展元字符只需在扩展元字符前加, 如果不加\的话扩展元字符被识别成字面的字符来搜索

扩展原字符  +, ?, {}, ()

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

三 grep各种查找结果的退出状态码

  1. 查到结果的退出状态码为0
[root@DTOS data]# grep 'andy' test.txt ;echo $?
andy
0
  1. 没查到结果的退出状态码为1
[root@DTOS data]# grep 'anty' test.txt ;echo $?
1
  1. 查找的文件不存在的退出状态码为2
[root@DTOS data]# grep 'anty' t.txt ;echo $?
grep: t.txt: No such file or directory
2
  1. 用q参数可以不输出搜索到的结果,只得到退出状态码
[root@DTOS data]# grep -q 'andy' test.txt ;echo $?
0

四 正则中\w \W \b的使用

1.  \w 代表字符即数字和字母[a-Z0-9]
[root@DTOS data]# grep '\wandy' test.txt 
andy12345andyandy
21321andy


2. \W 代表非字符即特殊字符 [^a-Z0-9]
[root@DTOS data]# grep '\Wandy' test.txt 
[0{3}andy
...andy././/.

3. \b代表词边界,相当于\<或\>
[root@DTOS data]# grep '\bandy\b' test.txt 
[0{3}andy
...andy././/.
andy


五 grep的选项

在这里插入图片描述

  1. -i
    在这里插入图片描述
  2. -l

在这里插入图片描述

  1. -n
    在这里插入图片描述

  2. -c
    在这里插入图片描述

  3. -o
    在这里插入图片描述

  4. -B 显示匹配行之前的几行
    在这里插入图片描述

  5. 如果搜索词是这些参数需要加上, 否则会把当做是参数处理

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值