在所有目录中查找同名的子目录

iam*_*ind 8 linux command-line find

我想运行一个命令:

  1. inc在文件夹“ X”下查找所有名为“ ”的目录。
  2. 列出每个“ X/.../inc/”下的所有子目录。
  3. 将输出重定向到名为“ list”的文件

我尝试了以下命令的各种组合,但没有成功:

$ find X/ -name "inc" -print | xargs find {} -type d > list
find: path must precede expression
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

Dan*_*son 13

find 可以自己完成这一切:

find X -path '*/inc/*' -type d > list
Run Code Online (Sandbox Code Playgroud)

阅读 的-path部分以man find获取更多信息。

正如我在评论中快速提到的:如果将目录行存储在文本文件中,则包含换行符的目录名称将无法明确表示。如果您确定目录不包含换行符,那没关系。只是一般的评论。