在 Linux 中,如何检查目录中的所有文件夹并将所有空目录的名称输出到列表中。
尝试以下操作:
find . -type d -empty
使用 Zsh,您可以执行以下操作:
printf '%q\n' ./*/**/(/DN^F)
将
.
替换为所需目录的实际路径,如果要搜索整个文件系统,则将其删除。
来自名为 Glob Qualifiers 的部分:
F
“完整”(即非空)目录。请注意,相反的含义
扩展到空目录和所有非目录。对于空目录使用(^F)
。(/^F)
/
表示显示目录D
表示还搜索隐藏文件(本例中为目录)N
启用空模式。即找不到目录的情况不应导致 glob 失败F
表示显示非空目录^
用于否定其后面的限定词的含义将它们全部放入数组中:
empties=(./*/**/(/DN^F))
奖励:要删除所有空目录:
rmdir ./*/**/(/DN^F)
看来我们终于找到了一个有用的案例
rmdir
!