在bash中遍历子目录

在bash中遍历子目录,bash,grep,Bash,Grep,在bash中,我们如何迭代给定目录的子目录并获取这些子目录中的文件。我可以使用grep命令吗?您可能正在查找。这将深入一个子目录。for的内部循环将迭代封闭的文件和目录。if语句将排除目录。您可以设置包含隐藏文件和目录的选项(shopt-s dotglob) 这将是递归的。您可以使用-maxdepth选项限制深度 find /some/dir -mindepth 2 -type f -exec do_something {} \; 使用-mindepth排除当前目录中的文件,但它包括下一级(和

在bash中,我们如何迭代给定目录的子目录并获取这些子目录中的文件。我可以使用grep命令吗?

您可能正在查找。

这将深入一个子目录。
for
的内部
循环将迭代封闭的文件和目录。
if
语句将排除目录。您可以设置包含隐藏文件和目录的选项(
shopt-s dotglob

这将是递归的。您可以使用
-maxdepth
选项限制深度

find /some/dir -mindepth 2 -type f -exec do_something {} \;

使用
-mindepth
排除当前目录中的文件,但它包括下一级(和下一级,取决于
-maxdepth
)中的文件。

好吧,您可以使用
grep
实现这一点:

grep -rl ^ /path/to/dir

但是为什么呢
find
更好。

如果我用dos2unix替换dou\u something,我会得到
find:缺少参数的
-exec'`。但是,我需要一个dos2unix文件。所以也许find不起作用,但是循环。但我想深入到文件夹。
grep -rl ^ /path/to/dir