我正在尝试在给定目录内递归地设置目录或文件的权限/所有权,而不改变另一个。
例如,我有一个目录 /web,我想将其中的所有目录设置为 775,但将文件设置为 664。
有没有办法可以轻松地做到这一点?
答案1
对于文件:
$ find /path/to/directory -type f -print0 | xargs -0 chmod 664
对于目录:
$ find /path/to/directory -type d -print0 | xargs -0 chmod 775
答案2
作为 ErikA 答案的补充,如果我猜出您想要这样做的原因,您是想为“组”添加写入位。如果是这种情况,您可以避免两个命令的舞蹈,只需运行:
chmod -R g+w /path/to/directory