在当前目录下,查找所有内容包含‘abc'的文件
find . -type f | xargs grep -l 'abc'
或
find . -type f -exec grep -l 'abc' {} \;
linux查找文件命令find
根据部分文件名查找方法:
这个方法和在WINDOWS中查找已知的文件名方法是一样的。不过在Linux中根据部分文件名查找文件的方法要比在WINDOWS中的同类查找方法要强大得多。
例如我们知道某个文件包含有srm这3个字母,那么要找到系统中所有包含有这3个字母的文件是可以实现的,输入:
find /etc -name '*srm*'
这个命令表明了Linux系统将在/etc整个目录中查找所有的包含有srm这3个字母的文件,比如 absrmyz, tibc.srm等等符合条件的文件都能显示出来。如果你还知道这个文件是由srm 这3个字母打头的,那么我们还可以省略最前面的星号,命令如下:
find/etc -name 'srm*'
这是只有像srmyz 这样的文件才被查找出来,象absrmyz或者 absrm这样的文件都不符合要求,不被显示,这样查找文件的效率和可靠性就大大增强了。
1首先按文件名 使用命令 find /etc -name “xxxx”
find是查询命令
/etc是所要查询的目录
-name表示以名字的方式查找
xxxx 是你要查找的文件名 如果要查某个后缀的文件 可以使用通配符如''*.xt'或'*.conf'
2然后是按文件内容 find /etc -name “xxxx” -exec grep 'AAAA' {} \; -print
前面是第一步的查询文件名 后面的AAAA是你要查询的内容 -print是为了显示出查找到匹配文件的路径
在当前目录下,查找所有内容包含‘abc'的文件
find . -type f | xargs grep -l 'abc'
或find . -type f -exec grep -l 'abc' {} \;
我只知道两个分开查,查文件名用find ,查内容用grep
find ./ "abc"
grep -R 'abc' ./
grep -r 'abc' | find -name '*abc*'