2010-05-26 119 views

回答

11

您会发现该词条有定义-empty

您应该能够使用find . -type d -empty

1

如果你是一个zsh的用户,你总是可以做到这一点。如果你没有,也许这将说服你:

echo **/*(/^F) 

**/*将扩大到当前的工作目录的每个子节点和()是水珠预选赛。 /限制与目录匹配,并且F将匹配限制为非空目标。用^否定它给我们所有的空目录。有关更多详细信息,请参见zshexpn手册页。

1

您还可以使用:

find . -type d -links 2 

。和..都算作一个链接,就像文件一样。

0

Pimin Konstantin Kefalou的答案打印只有2个链接和其他文件(d,f,...)的文件夹。

我发现最简单的方法是:

for directory in $(find . -type d); do 
    if [ -n "$(find $directory -maxdepth 1 -type f)" ]; then echo "$directory" 
    fi 
done 

如果您有名称用空格在“$目录”使用引号。

您可以更换。通过您的参考文件夹。

我一直无法用一条查找指令来做到这一点。