请问linux下如何递归查找某个目录的所有文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请问linux下如何递归查找某个目录的所有文件相关的知识,希望对你有一定的参考价值。
用find。比如,我在根目录"/"下查找一个名字为”a.c“的文件:
find
/
-type
f
-name
"a.c"
-type
f
---说明我查找的是一个常规文件。 参考技术A find
*
!
-
name
‘*.svn’|
xargs
grep
"string"
,更多关于find命令的联合使用,请参考书籍《linux就该这么学》。
linux查找目录下的所有文件中是否含有某个字符串
用grep遍历目标目录下的所有文件
比如:你的字符是 “some_code” ,文件夹名字是 YOUR_DIR
1 grep -R "some_code" YOUR_DIR
如果你不需要显示内容,只需要含有某个字符的文件:
1 grep -lR "some_code" YOUR_DIR
附录:
grep -R 和 -l 参数
-R, -r, --recursive
递归地读每一目录下的所有文件。这样做和 -d recurse 选项等价。
-l, --files-with-matches
禁止通常的输出;作为替代,打印出每个在通常情况下会产生输出的输入文件的名字。对每个文件的扫描在遇到第一个匹配的时候就会停止。
ps:
如果目录下有二进制文件,也可能匹配到。
以上是关于请问linux下如何递归查找某个目录的所有文件的主要内容,如果未能解决你的问题,请参考以下文章
linux——grep命令 查找目录下的所有文件中是否含有某个字符串