查找权限高于xxx的文件

tes*_*ing 6 permissions find

我想找到所有具有比例如 640 更高权限的文件。也许这可以与 find 和 exec 命令一起使用。但我的知识不足以完成这样的任务。

Gil*_*il' 6

我想你所追求的是

find -perm -640 ! -perm 640
Run Code Online (Sandbox Code Playgroud)

即搜索至少具有 640 中所有权限并且没有 640 作为权限位的文件。或者,换句话说,在所有者可读和可写且组可读的文件中,搜索可由所有者以外的其他人执行或可写或世界可读(假设没有 ACL)的文件。您可能希望添加-type f限制到常规文件,或者至少! -type d -o -type d -perm 750 ! -perm 750允许目录具有执行权限。

如果您想匹配权限位(解释为整数)高于 0o640(实际上没有任何意义)的文件,您将不得不列举几种情况。如果您查看按位表示,有两种方法可以使 0 到 0o777 之间的数字大于 0o640:除了 0o600 位之外,还设置了 0o100 位,或者设置了 0o640 位。! -perm 640如果您希望权限 0o640 匹配,请删除最后一个。

find -perm -700 -o -perm -640 ! -perm 640
Run Code Online (Sandbox Code Playgroud)