如何递归设置只读权限?

Dav*_*d B 15 linux permissions file-permissions

我有一个非常大而深的目录。我想让所有内容都只读。问题是我想我必须区分文件(将获得a=r)和目录(将获得a=rx)。

我怎样才能做到这一点?

Dav*_*d B 14

我刚刚发现这个:chmod a=rX这解决了我的问题。来自男人:(X)execute/search only if the file is a directory or already has execute permission for some user


use*_*686 7

  1. chmod接受 mode X,它只设置x为目录。a=X

  2. 您也可以删除写权限: a-w

  • +1 选项 #2,最合乎逻辑的方式 (3认同)
  • 选项 2 也为 +1,但 -0.5 用于误解大写 X 在 chmod 中的含义 (3认同)

小智 7

上面的建议对我不起作用,所有文件夹都设置为只读。
一位同事给了我这个,它有效:

find . -type f -exec chmod a-w {} \;
Run Code Online (Sandbox Code Playgroud)