我想检查Linux上的文件是否具有权限555,但该文件具有755权限。 所以我在我的程序中做了一个布尔值:
if ((perm_of_file && perm_required) == 555)
即。 (755 && 555 == 555)
这应该评估为真吗? 我知道这在编程方面并不直观,真正的背景问题是: 755是否被视为555权限组的“成员”?
我尝试了什么:
我在Linux上使用find -perm 555
并且它没有列出那些拥有755权限的文件,所以我猜这个问题的答案是否定的?
如果有人可以帮我回答或重新提出这个问题,那将非常有帮助。 提前谢谢!
答案 0 :(得分:1)
答案是否定的。
因为在755中,文件的所有者具有写入权限,而在555中,所有者没有写入权限。 (虽然所有者可以使用chmod
进行更改,因为他是所有者!)。
我认为您要检查另一个权限是否包含包含。如果你以某种方式拥有文件的权限,那么只需检查:
if (perm_of_file >= perm_required)
答案 1 :(得分:1)