如何查找目录下包含某个字符串的所有文件

如何查找目录下包含某个字符串的所有文件,第1张

文本编辑器工具,比如sublime  进去ctrl+shift+f 整个目录搜索 ,

左侧是你的当前目录内的所有文件,*.*表示所有文件名的所有格式你也可以是设置比如查找txt文件

流程:

查找目录下的所有文件中是否含有某个字符串,并且只打印出文件名find.|xargs grep-ri"IBM"-l

1.正则表达式

(1)正则表达式一般用来描述文本模式的特殊用法,由普通字符(例如字符a-z)以及特殊字符(称为元字符,如/、*、?等)组成。(2)基本元字符集及其含义

只匹配行首。如^a 匹配以a开头的行abc,a2e,a12,aaa,.

只匹配行尾。如^a 匹配以a结尾的行bca,12a,aaa,.

匹配0个或多个此单字符。如(a)*匹配 空,a,aa,aaa,.

[]:只匹配[]内字符。可以是一个单字符,也可以是字符序列,用","将里面要匹配的不同字符串分开。也可以使用-来表示[]内字符序列的范围,如[1-5]表示[12345]

\:只用来屏蔽一个元字符的特殊含义。如\*,\',\",\|\+,\^,\.等

(点)只匹配任意单字符。pattern\{n\}:只用来匹配前面pattern出现的次数.n为次数。如a\{2\}匹配aa.pattern\{n,\}:含义同上,但次数最少为n.如a\{2,\}匹配aa,aaa,aaaa,.pattern\{n,m\}:含义同上,但次数在n和m之间。如a\{2,4\}匹配aa,aaa,aaaa三个

(3)举例说明:

匹配空行

希望能帮到大家

给定字符串查找文件名,例如,查找当前目录下所有文件中包含字符串"Linux"的文件,可以使用如下命令:egrepLinux*

举例:testfile、testfile1中都还有Linux,查找结果如下所示:

$egrepLinux*#查找当前目录下包含字符串“Linux”的文件 

testfile:helloLinux!  

testfile:LinuxisafreeUnix-typeoperatingsystem. 

testfile:Linux. 

testfile1:helLinux!

testfile1:ThisaLinuxtestfile! 

扩展资料

Linuxegrep命令执行效果与"grep-E"相似,使用的语法及参数可参照grep指令,与grep的不同点在于解读字符串的方法。

egrep是用extendedregularexpression语法来解读的,而grep则用basicregular

expression语法解读,extendedregularexpression比basicregular

expression的表达更规范。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11945337.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存