我想计算深度为2的子目录数,但忽略bash脚本中深度为1的父目录。
例:
root_dir ---|--ignore_dir ---|--count_dir
| |--count_dir ---|--ignore_dir
| |--ignore_dir
|--ignore_dir ---|--count_dir
|--count_dir
|--count_dir
有任何想法吗?
你可以尝试这样的事情:
find /path/to/root_dir -maxdepth 2 -mindepth 2 -type d | wc -l
在这里,我们明确地将find
的深度限制为2(不多也不少)并列出所有目录。 wc -l
计算find
命令输出的行数。
另一种方法是通过globbing
ls /path/to/root_dir/*/*/ -d | wc -l
我发现这种类型的解决方案更容易记住,但它并不像find
-one那样容易“扩展”(例如,达到许多deapth级别)