如何递归 chmod 文件夹内的所有内容?
例如,我有一个名为的文件夹var
,其中包含许多子文件夹和文件。
如何将 chmod 755 递归应用于此文件夹及其所有内容?
slh*_*hck 195
请参阅手册(man chmod
):
-R, --recursive
change files and directories recursively
Run Code Online (Sandbox Code Playgroud)
chmod -R 755 /path/to/directory
会执行你想要的。
然而…
您通常不想 755 所有文件;这些应该是 644,因为它们通常不需要是可执行的。因此,您find /path/to/directory -type d -exec chmod 755 {} \;
只能更改目录权限。使用-type f
和chmod 644
将权限应用于文件。
这将覆盖任何现有权限。这样做不是一个好主意/var
- 该文件夹已经具有系统设置的正确权限。例如,某些目录/var
需要 775 权限(例如,/var/log
)。
所以,在做之前sudo chmod
——特别是在系统文件夹上——暂停并考虑这是否真的需要。
如果您想应用于chmod
特定目录/文件,可以使用find
以下命令:
find . -type f -name "*.sh" -print0 |xargs -0 chmod 755
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
317034 次 |
最近记录: |