如何查找仅对所有者具有特定权限的文件?

时间:2013-03-06 12:36:43

标签: linux bash file permissions find

我想仅在某个用户的许可下才能找到文件。 例如,如果我想找到一个我拥有完全权限的文件。

我可能会这样做:

find . -user $(whoami) -perm 

但如果我想忽略root用户和其他用户的权限,我应该在-perm之后放置什么。

2 个答案:

答案 0 :(得分:68)

开始于:

find /path/to/file -user user1 -perm -u+rwx

这意味着:查找以 user1 所拥有的 / path / to / files 开头的文件,其中group和other的权限可以是任何内容( - 在前面权限字符串)和用户权限仅为: rwx

另外,尝试一些阅读。这有很好的例子:Find tutorial

答案 1 :(得分:14)

  

-perm -mode

     

为文件设置了所有权限位模式。这种形式接受符号模式,这通常是想要使用它们的方式。您必须指定' u',' g'或者' o' o如果您使用符号模式。

find . -user $(whoami) -perm -007

对于指定的用户,它返回具有以下权限的文件: rwx

find . -user $(whoami) -perm -006

对于指定用户,它返回具有以下权限的文件: rwx rw

find . -user $(whoami) -perm -005

对于指定的用户,它返回具有以下权限的文件: rwx rx

find . -user $(whoami) -perm -004

对于指定的用户,它返回具有以下权限的文件: rwx rw rx r

find . -user $(whoami) -perm -003

对于指定用户,它返回具有以下权限的文件: rwx wx

find . -user $(whoami) -perm -002

对于指定的用户,它返回具有以下权限的文件: rwx rw wx w

find . -user $(whoami) -perm -001

对于指定的用户,它返回具有以下权限的文件: rwx rx wx x

find . -user $(whoami) -perm -000

对于指定用户,它返回具有以下权限的文件: rwx rw rx wx r w x 0

  

-perm / mode

     

为文件设置了任何权限位模式。这种形式接受符号模式。您必须指定' u',' g'或者' o' o如果您使用符号模式。有关一些说明性示例,请参见“示例”部分。如果未设置模式中的权限位,则此测试将匹配任何文件(此处的想法与-perm -000的行为一致)。

find . -user $(whoami) -perm /007

对于指定用户,它返回具有以下权限的文件: rwx rw rx wx r w x

find . -user $(whoami) -perm /006

对于指定用户,它返回具有以下权限的文件: rwx rw rx wx r w

find . -user $(whoami) -perm /005

对于指定用户,它返回具有以下权限的文件: rwx rw rx wx r x

find . -user $(whoami) -perm /004

对于指定的用户,它返回具有以下权限的文件: rwx rw rx r

find . -user $(whoami) -perm /003

对于指定用户,它返回具有以下权限的文件: rwx rw rx wx w x

find . -user $(whoami) -perm /002

对于指定的用户,它返回具有以下权限的文件: rwx rw wx w

find . -user $(whoami) -perm /001

对于指定的用户,它返回具有以下权限的文件: rwx rx wx x

find . -user $(whoami) -perm /000

对于指定的用户,它返回具有以下权限的文件: rwx rx rw wx r w x 0

示例已经过测试。

Source of citations.