递归地将所有文件权限更改为 644,将所有文件夹权限更改为 755

smh*_*aji 8 permissions directory recursive chmod

如何在以下两种情况下使用 chmod 递归地将所有文件权限更改为 644 并将所有文件夹权限更改为 755:

  • 如果他们有777权限
  • 无论权限如何(具有任何权限)

smh*_*aji 25

find . -type d -perm 777 -exec chmod 755 {} \; (用于更改目录权限)

find . -type f -perm 777 -exec chmod 644 {} \; (用于更改文件权限)

如果文件/目录没有777权限,我们可以轻松删除该-perm 777部分。这些命令的优点是它们可以针对常规文件或目录,并且只将 chmod 应用于匹配特定权限的条目。

. 是开始搜索的目录

-type d是匹配目录(-type f匹配常规文件)

-perm 777 匹配具有 777 权限的文件(允许用户、组和所有人读取、写入和执行)

-exec chmod 755 {} \;对于每个匹配的文件,执行命令chmod 755 {},其中 {} 将被文件路径替换。的;指示命令的结束,在此之后的参数;作为处理find参数。我们必须用它来转义它,\因为它;是默认的 shell 分隔符,否则这将意味着find命令的结束。


ada*_*ptr 11

无论权限如何:

chmod -R a=r,a+X,u+w /your/path
Run Code Online (Sandbox Code Playgroud)