仅查找符合搜索条件的顶级目录

仅查找符合搜索条件的顶级目录

我正在尝试查找所有 777 的网络文件夹。但我只想要顶级文件夹的列表。

因此,如果 img 目录中的文件夹也是 777,我不希望返回它们。

基本上,我正在寻找一种方法,让 find 在找到 777 文件夹后停止下降。

find /var/www/vhosts/ -type d -perm 777

给我

/var/www/vhosts/example.com/httpdocs/img
/var/www/vhosts/example.com/httpdocs/img/gbl
/var/www/vhosts/example.com/httpdocs/img/ss

我想要的只是第一个

/var/www/vhosts/example.com/httpdocs/img

答案1

使用 -prune 标志。

find /var/wwwhosts/ -type -d -perm 777 -prune应该准确显示您想要的内容。

编辑:这就是它为我所做的,我相信这就是你想要的?

# ls -l
drwxrwxrwx 4 root root 4096 2月 25 14:21 c

# ls -lc
drwxr-xr-x 2 root root 4096 2月 25 14:21 1
drwxrwxrwx 2 root root 4096 2月25日 14:21 2

# 查找 .-perm 777-prune
。/C

# 查找 . -perm 777 -prune -exec ls -ld {} \;
drwxrwxrwx 4 root root 4096 2月25日 14:21 ./c

相关内容