Adam Adam - 4 months ago 45
Linux Question

How to set chmod for a folder and all of its subfolders and files in Linux Ubuntu Terminal?

Is there a way to set

chmod 755
for
/opt/lampp/htdocs
and all of its content including subfolders and files? Also, if I create a new folder or file, how can the chmod of that automatically be set to 755?

This works, but only for this folder:

chmod 75 /opt/lampp/htdocs

Answer

The other answers are correct, in that chmod -R 755 will set this as permissions to all files and folders in the tree. But why on earth would you want to? It might make sense for the directories, but why set the execute bit on all the files?

I suspect what you really want to do is set the directories to 755 and either leave the files alone or set them to 644. For this, you can use the find command. For example:

To change all the directories to 755 (-rwxr-xr-x):

find /opt/lampp/htdocs -type d -exec chmod 755 {} \;

To change all the files to 644 (-rw-r--r--):

find /opt/lampp/htdocs -type f -exec chmod 644 {} \;
Comments