怎样在Linux下查找文件内容包含某个特定字符串的文件?

 我来答
return小风
推荐于2019-09-12 · TA获得超过1.2万个赞
知道小有建树答主
回答量:123
采纳率:100%
帮助的人:1.8万
展开全部

如何在Linux下查找文件内容包含某个特定字符串的文件?

我的目录下面有test1和test2两个文件夹,里面都含有很多文件,其中test2里面还包含一个test文件夹

我想请问的是,如何通过查找关键字test从而找到test1跟test2还有test,并且不显示其他文件

我尝试过用find /path -name test查找,结果出来的是/path/test2/test
ls test*查找,结果连同test1跟test2里面的子文件都显示出来,罗列了一大堆
我还尝试了用find test*查找,结果跟用上面的一样,只是罗列的方式不一样而已

以下是对查找常用的命令归纳【相应大家在linux上常用】

find:

查找文件:find ./actions/ -name Constract.php
查找包含leyangjun字母的文件:find /etc -name '*leyangjun*'
查找srm开头的文件:find/etc -name 'srm*'
我们要在/usr目录及子目录下查找文件名包含“leyangjun”关键字的文件:find /usr -print |grep leyangjun

grep:

在Constract.php文件中查找字符leyangjun的行:grep 'leyangjun' Constract.php
不区分大小写地搜索。默认情况区分大小写:grep -i 'ModifySubacction' controllers/Constract.php

管道查询:

从根目录开始查找所有扩展名为.log的文本文件,并找出包含”leyangjun”的行:find / -type f -name "*.log" | xargs grep "leyangjun"

当前目录开始查找所有扩展名为.php的文本文件,并找出包含”leyangjun”的行:find ./ -name "*.php" | xargs grep "leyangjun"

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式