> For the complete documentation index, see [llms.txt](https://agrat.gitbook.io/admin/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://agrat.gitbook.io/admin/linux/chmod-dlya-vzroslykh.md).

# chmod для взрослых ;)

<https://superuser.com/questions/91935/how-to-recursively-chmod-all-directories-except-files>

To recursively give **directories** read\&execute privileges:

```
find /path/to/base/dir -type d -exec chmod 755 {} +
```

To recursively give **files** read privileges:

```
find /path/to/base/dir -type f -exec chmod 644 {} +
```

Or, if there are many objects to process:

```
chmod 755 $(find /path/to/base/dir -type d)
chmod 644 $(find /path/to/base/dir -type f)
```

Or, to reduce `chmod` spawning:

```
find /path/to/base/dir -type d -print0 | xargs -0 chmod 755 
find /path/to/base/dir -type f -print0 | xargs -0 chmod 644
```
