一直在寻找,找不到解决方案。我想我正在按名称寻找叶目录。在此示例中,我想获取一个名为“modules”的目录列表,这些目录没有名为 module 的子目录。
modules/package1/modules/spackage1
modules/package1/modules/spackage2
modules/package1/modules/spackage3/modules
modules/package1/modules/spackage3/modules/spackage1
modules/package2/modules/
我想要的清单将包含
modules/package1/modules/spackage3/modules/
modules/package2/modules/
没有名为 module 的子目录的所有名为 module 的目录
我开始尝试这个没有运气的东西
find . -name modules \! -exec sh -c 'find -name modules' \;
-exec 适用于退出代码,好的,让我们将计数作为退出代码传递
find . -name modules -exec sh -c 'exit $(find {} -name modules|grep -n ""|tail -n1|cut -d: -f1)' \;
这应该计算每个名为 modules 的子目录的数量并退出。没有这样的爱。