如何在linux中列出空文件夹

时间:2012-02-23 17:24:07

标签: linux

在Linux中,如何检查目录中的所有文件夹,并将列表中所有空目录的名称输出。

2 个答案:

答案 0 :(得分:234)

尝试以下方法:

find . -type d -empty

答案 1 :(得分:1)

使用Zsh,您可以执行以下操作:

printf '%q\n' ./*/**/(/DN^F)

.替换为所需目录的实际路径,如果要搜索整个文件系统,则将其删除。


来自名为Glob Qualifiers的部分:

F

“完整”(即非空)目录。请注意,相反的含义(^F)扩展为空目录和所有非目录。将(/^F)用于空目录。

  • /表示显示目录
  • D意味着还搜索隐藏文件(在这种情况下为目录)
  • N启用空模式。即找不到目录的情况不应该导致Glob失败
  • F表示显示非空目录
  • ^用于取消其后的修饰符的含义

将它们全部放入数组中:

empties=(./*/**/(/DN^F))

奖金:要删除所有 empty 目录:

rmdir ./*/**/(/DN^F)

好像我们终于找到了rmdir的有用案例!