gpt4 book ai didi

bash - 使用 GNU find 只显示叶目录

转载 作者:行者123 更新时间:2023-11-29 08:41:25 25 4
gpt4 key购买 nike

我正在尝试使用 GNU find 仅查找不包含其他目录但可能包含也可能不包含常规文件的目录。

到目前为止我最好的猜测是:

find dir -type d \( -not -exec ls -dA ';' \)

但这只会让我得到一长串“。”

谢谢!

最佳答案

如果您的文件系统是 POSIX 兼容的,您可以使用 -links(即目录中的每个子目录都有一个链接,一个来自其父目录的链接和一个指向自身的链接,因此计数为 2如果它没有子目录,则链接)。

下面的命令应该做你想做的:

find dir -type d -links 2

但是,它似乎不适用于 Mac OS X(如@Piotr 所述)。这是另一个版本,速度较慢,但​​可以在 Mac OS X 上运行。它基于他的版本,并更正了目录名称中的空格:

find . -type d -exec sh -c '(ls -p "{}"|grep />/dev/null)||echo "{}"' \;

关于bash - 使用 GNU find 只显示叶目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4269798/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com