列出没有特定文件夹的目录

列出没有特定文件夹的目录

我需要一些帮助来使用‘查找’构建目录列表吗?

示例目录结构如下所示:

/ (root)
 - /foo
   - /folderA
   - /folderB
 - /bar
   - /folderA
     -/search
   - /folderB

我想要查找的是没有“搜索”文件夹的“folderA”或“folderB”目录列表。请求的输出将是:

/foo/folderA
/foo/folderB
/bar/folderB

我假设这可以在 *nix 系统上使用“find”来完成,但我对这个命令还不是很熟悉。非常感谢大家的帮助。

已解决:感谢 Khaled 的回复,为我指明了正确的方向。需要稍微修改一下以包含 -E 选项,但最终的解决方案如下所示:

find -E . -regex '.*(folderA|folderB)' -type d '!' -exec test -d '{}/search' ';' -print

答案1

您可以找到如下命令:

$ find . -regex ".*folder\(A\|B\)" -type d '!' -exec test -d '{}/search' ';' -print

相关内容