如何在linux中列出空文件夹

如何在linux中列出空文件夹,linux,Linux,在Linux中,如何检查目录中的所有文件夹并将所有空目录的名称输出到列表中。请尝试以下操作: find . -type d -empty printf '%q\n' ./*/**/(/DN^F) 使用Zsh,您可以执行以下操作: find . -type d -empty printf '%q\n' ./*/**/(/DN^F) 将替换为所需目录的实际路径,如果要搜索整个文件系统,请将其删除 从名为: F “完整”(即非空)目录。请注意,相反的含义(^F)扩展为空目录和所有非目录。对空

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

请尝试以下操作:

find . -type d -empty
printf '%q\n' ./*/**/(/DN^F)

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

find . -type d -empty
printf '%q\n' ./*/**/(/DN^F)
替换为所需目录的实际路径,如果要搜索整个文件系统,请将其删除


从名为:

F

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

  • /
    表示显示目录
  • D
    意味着还可以搜索隐藏文件(本例中为目录)
  • N
    启用空模式。i、 e.未找到目录的情况不应导致glob失败
  • F
    表示显示非空目录
  • ^
    用于否定其后限定符的含义
要将它们全部放入一个数组中,请执行以下操作:

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

奖励:要删除所有空目录:

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

看来我们终于找到了一个关于
rmdir
的有用案例

您需要将“/”更改为要用作搜索根目录的目录。谢谢!它在我的系统上运行得很好。要获得排序列表,请使用:
find/-typed-empty | sort-u
,顺便删除:find-类型d-empty-execrmdir{}\;当前目录中的空目录:
find-类型d-空
。此外,空文件:
find-在当前目录和更深的目录中键入f-empty
。@Scott-为什么不
查找-类型d-空-删除
?类似:在SO
中,man find
解释了不同的列表格式。例如,请参见
-print
-print0