如何使用find扫描所有设置了执行位的文件?


19

我想编写一个使用find来修复文件权限的权限修复脚本。

我主要需要的是find命令,该命令能够列出设置了执行位的所有文件,而与文件上的其他权限无关(这就是窍门)。


2
您已经尝试了什么?你做了什么研究?就像现在所写的那样,您只是在要求我们为您完成工作,而您在解决这一问题上还没有付出任何努力。
EEAA 2013年

另外,我强烈建议您在发布更多问题之前先阅读一下适合哪些类型的问题。您有很多封闭式和否决式的问题,如果不小心,很可能会违反自动问题禁令。
EEAA 2013年

@EEAA:可悲的是,我怀疑这几乎是即将发生的事情。如果您有任何代表,就很难获得q禁令。

@Iain-足够公平。希望他仍然会听从建议。
EEAA 2013年

2
@EEAA:我也希望如此,但是那些不愿阅读手册的人通常不会听取建议-他们只是发现更容易抱怨我们的态度...iyswim;)

Answers:


24

在GNU的发现中:

find /dir -type f -executable

在其他版本上,请参见周围的手册页-perm


11

信不信由你,这在find手册页中有很多记录。在CentOS和Ubuntu系统上,我什至需要举一些例子。

-烫发/模式

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

所以

find  . -perm /u+x

将查找为所有者设置执行权限的文件

find . -perm /u+x,o+x

将查找为所有者等设置了执行权限的文件,依此类推。


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.