41

我想让某个目录下的所有文件(和目录)都可读,而不必单独对每个文件进行 chmod。如果有一个选项也可以递归地执行此操作,那就太好了(查看文件夹和 chmod 666 下的所有文件)

4

3 回答 3

54

man 3 chmod包含您要查找的信息。

chmod -R +r directory

-R选项告诉chmod递归操作。

于 2012-10-29T09:54:23.713 回答
10

由于目录可能包含链接和/或绑定挂载,因此使用find可以确保在做什么和不做什么方面具有最精细的粒度......

find directory \( -type f -o -type d \) -print0 |
    xargs -0 chmod ugo+r

要排除挂载点下的路径:

find directory -mount \( -type f -o -type d \) -print0 |
    xargs -0 chmod ugo+r

要排除某些特定文件(示例为 .htaccess):

find directory \( -type f -o -type d \) ! -name '.htaccess' -print0 |
    xargs -0 chmod ugo+r
于 2012-10-29T12:19:29.657 回答
1
chmod -R 0444 ./folder_name

递归地对目录下的所有文件应用权限

于 2012-10-29T12:25:29.110 回答