仅对 {目录|文件} 进行递归 chmod

仅对 {目录|文件} 进行递归 chmod

我想知道怎样才能递归地更改某个路径下所有文件夹的权限(例如/用户/我/桌面/main_folder),并更改特定文件夹下所有文件的权限。

这些是我想要分配的权限:

  • 所有文件夹:700
  • 所有文件:600

有一个文件夹问题,但我没有找到该文件。

答案1

那是

find . -type d -exec chmod 700 {} \;

对于从.当前目录开始的所有目录,以及

find . -type f -exec chmod 600 {} \;

用于文件。

有没有办法知道所有被修改的文件夹?

那将是

find . -type d -exec chmod 700 {} \; -exec echo {} \;

我必须先 cd 到根文件夹,对吗?

请不要从根目录执行此操作:您将使所有可执行文件都无法执行,包括 ls、rm、mkdir 等。系统将变得无法管理!!!

相关内容