结合 find-chmod 用于目录和 find-chmod 用于常规文件

Arc*_*ing 0 find chmod

我有这些命令:

find /var/www/html/* -type d -exec chmod 755 {} \;
find /var/www/html/* -type f -exec chmod 644 {} \;
Run Code Online (Sandbox Code Playgroud)

我从斯蒂芬·基特的回答了解这里我可以此方式将它们组合:

find /var/www/html/* -exec chmod a-x,a=rX,u+w {} \+
Run Code Online (Sandbox Code Playgroud)

这些chmod参数是给我读不舒服,尤其是在find语法(我还没有熟悉尼克斯喜欢连击的意思a-xa=rXu+w我没有了解它在一个时间和心灵的安宁在接下来的日子里认真对待)。

在那里可以使用数字吗?如果没有,即使比建议的特定命令长一点点,也可能有更舒适的方法来联合这两个命令?

Ste*_*itt 6

我会说你应该使用任何你觉得舒服的东西;所以

find /var/www/html/* -type d -exec chmod 755 {} \+
find /var/www/html/* -type f -exec chmod 644 {} \+
Run Code Online (Sandbox Code Playgroud)

很好(\+而不是\;)。

a-x,a=rX,u+w chmod参数分别指“明确每个人的执行位”,“设置权限给大家阅读(=r),如果可执行文件的目录或可执行文件(=X)”和“添加为业主可写位”。条件部分(如果是目录或可执行文件则可执行)不能用数字表示。

我发现你find在这里根本不需要:

chmod -R a-x,a=rX,u+w /var/www/html/*
Run Code Online (Sandbox Code Playgroud)

将仅使用相同的更改chmod