【发布时间】:2011-05-15 06:19:38
【问题描述】:
我正在尝试使用 GNU find 仅查找不包含其他目录但可能包含也可能不包含常规文件的目录。
到目前为止,我的最佳猜测是:
find dir -type d \( -not -exec ls -dA ';' \)
但这只是让我得到一长串“。”
谢谢!
【问题讨论】:
-
使用 -exec 时,{} 参数扩展为当前检查的文件系统对象的路径(文件/目录/...)。所以你应该使用以下命令来打印目录:find dir -type d \( -not -exec ls -dA {} \; \)
-
由于这个问题在搜索中排名很高,请参阅stackoverflow.com/a/9418016/315024,它给出了最简单的答案:
find -type d -empty