Reb*_*ifa 13 permissions command-line find groups
我只想知道如何使用终端在文件夹中找到根本没有组用户权限(没有读/写/执行)的文件。
Eli*_*gan 17
您可以使用:
find . \! -perm /070
Run Code Online (Sandbox Code Playgroud)
或者:
find . \! -perm /g+rwx
Run Code Online (Sandbox Code Playgroud)
这是有效的,因为:
当-perm测试的操作数以开头时/,它会导致-perm测试是否存在任何指定的权限。
(如果你使用-代替/,这将考验,如果一切都出席了。如果没有前缀字符,它会测试准确规定的权限,即,所有的人,并没有其他人在场。)
这就是你要找的东西相反-没有是相反的任何-而不是运营商\!否定它后面的测试结果。
(操作符是真的!,你可能可以这样写,但通常写它是\!为了确保一个人的 shell 将它传递给find而不是特殊对待它。)
至于后面的具体字符串的含义/,请参见FilePermissions、这篇维基百科文章和/或man chmod。总之,应用于上面显示的命令:
070是八进制权限字符串,分别指定用户(即所有者)、组和其他(即其他所有人)的权限。7被读取(4),写(2)和执行(1)的权限(即,111具有1比特中100,010和001)。g+rwx是一个符号权限字符串,指定组 ( g) 具有读取 ( r)、写入 ( w) 和执行 ( x) 权限。无论您使用哪种符号,请记住,您所表达的内容与您最终想要的相反,因为测试结果被 否定!。