如何搜索具有特定权限的文件


8

如何搜索具有特定权限的文件。例如,我有10000个文件,而我想查找具有READ ONLY标志的文件。在另一种情况下,我想搜索具有特定所有者的其他人。或者在另一个目录中查看只读和可执行的文件。

Answers:


9

使用该find命令可能是最简单的,它允许您递归搜索目录树。例如,如果您特别想查找只读文件,则可以输入

find <specify location> -type f -perm -444

对于属于特定用户的文件,您可以使用

find <location> -type f -user mike

对于可执行文件(全部),您可以使用

find <location> -type f -perm -777

对于所有可执行文件和只读文件,在上面的示例中,您将使用555代替777。您也可以用代替-user mike来搜索属于一个组的文件-group mike

要否定搜索词并搜索完全相反的词,可以使用如下感叹号:

find <location> -type f ! -perm -444 

注意:在权限前加一个破折号(例如-perm -444)意味着将找到所有具有只读标志的文件,而不仅仅是444文件。要仅精确地搜索444,只需删除破折号(例如-perm 444)。

注2:也可以使用-afor和and -ofor or 来寻求权限的组合。例如,要确切地找到这些权限,请键入:

find <location> -type f -perm 744 -o -perm 666

可以使用搜索目录-type d

请参阅man find以获取其他可用排列。


+1之间提有关差异-444444
Fr0zenFyr

对我而言,-perm -444查找具有read权限的文件,而不是只读文件(意味着, 具有read其他权限,而不具有其他权限)。
贾尼斯·埃默里斯(JānisElmeris)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.