grep 与条件_会了这个命令你就是Linux操作大神--三剑客之一GREP命令

本文详细介绍了Linux中grep命令的使用,包括如何查找指定内容在哪个文件中,如何递归查找目录下含有特定字符串的文件,以及如何显示匹配行的前后几行信息。同时,还列举了grep的常用高级选项,如忽略大小写、只显示匹配行的行号、显示上下文等,帮助提升Linux文件搜索效率。
摘要由CSDN通过智能技术生成

linux必会命令-grep查找文件内容

402c9e98abe5ef194d57d94f04ce4a97.png

1、Linux 查找指定内容在哪个文件中

在实际的工作中,忘记配置项放在哪个文件中时,可借助命令来查询.

A、grep -r "查询内容" 文件目录 #这样查询出来的包括文件名+内容

grep -r -l "查询内容" 文件目录 #这样只显示包含内容的文件名

B、find 文件目录 -type f |xargs grep "查询内容"; #也可以达到效果

2、找目录下含有该字符串的所有文件

A、递归查找:grep -rn "HXM" /home/path

B、查找当前目录下后缀名为过滤的文件:grep -Rn "HXM" *.py

C、当前目录及设定子目录下的符合条件的文件:grep -Rn "HXM" /home/path *.py

D、结合find命令过滤目录及文件名后缀:

find /home/path -type f -name "*.py" | xargs grep -n 'HXM'

3、Linux下grep显示前后几行信息

标准unix/linux下的grep通过下面參数控制上下文

grep -C 5 foo file 显示file文件里匹配foo字串那行以及上下5行

grep -B 5 foo file 显示foo及前5行

grep -A 5 foo file 显示foo及后5行

4、常用高级选项更牛掰

-E :开启扩展(Extend)的正则表达式。

-i :忽略大小写(ignore case)。

-v :反过来(invert),只打印没有匹配的,而匹配的反而不打印。

-n :显示行号

-w :被匹配的文本只能是单词,而不能是单词中的某一部分,如文本中有liker,而我搜寻的只是like,就可以使用-w选项来避免匹配liker

-c :显示总共有多少行被匹配到了,而不是显示被匹配到的内容,注意如果同时使用-cv选项是显示有多少行没有被匹配到。

-o :只显示被模式匹配到的字符串。

--color :将匹配到的内容以颜色高亮显示。

-A n:显示匹配到的字符串所在的行及其后n行,after

-B n:显示匹配到的字符串所在的行及其前n行,before

-C n:显示匹配到的字符串所在的行及其前后各n行,context

eccf56d49782977fd128b25dc711f023.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值