Possible Duplicate:
How to apply recursively chmod directories without affecting files?

What is the command to apply execute permission for directories (for traversal), but leave the execute bit off for files contained in the directory?


2 Answers 2


If you don't want to remove the executable bit from existing files you can use the X mode. To recursively set the executable bit on all directories use:

chmod -R a+X dir

From man chmod:

execute/search only if the file is a directory or already has execute permission for some user (X)


You want to test this first (as I didn't):

find . -type d -exec chmod u+x {} \;

Find all directories, then add x-bit for the owner/user.

  • 3
    If I understand the chmod man page correctly, Ulrich's answer is the better one.
    – jippie
    Commented May 31, 2012 at 20:09
  • The problem with Ulrich's solution is that to have to specify the directory. The solution by @jippie can be used as a wildcard change.
    – crafter
    Commented Jun 1, 2017 at 9:43
  • Thank you! It worked for me. I wanted to change only all directories (not files)
    – Ikrom
    Commented Nov 27, 2018 at 12:48

Not the answer you're looking for? Browse other questions tagged .