设置所有用户可执行的所有可执行文件,但保留不可执行的文件不可执行?

设置所有用户可执行的所有可执行文件,但保留不可执行的文件不可执行?

将文件复制到其中后,我有一个由 root 拥有的目录。所有exe文件只能以root身份运行。但我希望每个人都能够运行它。当然,我chmod -R u=rwX,g=rX,o=rX每次添加新文件后都可以使用。然而,这很烦人。我可以在目录中设置什么来自动允许所有用户运行该exe吗?

答案1

umask 0022在进行复制之前使用,-rw-r--r--默认情况下您将获得具有权限的所有新文件,但只有直接调用 chmod +x 才能使文件可执行。

您可以使用缩写命令:chmod -R a+rX directory手动执行此操作。

要自动设置所有文件权限,您可以使用 inotifywait ,如下所示:

inotifywait -qm <directory> -e create -e moved_to -e modify \
 | while read a b c; do chmod a+rX "${a}${c}"; done

相关内容