Как рекурсивно поменять права только каталогам или только файлам

find . -type d -exec chmod 755 {} ;

Эта команда рекурсивно пройдется по текущему (точка ".") каталогу и всем его подкаталогам и изменит права на 755 только у каталогов (-type d)

Похожим образом действуем и с файлами:

find . -type f -exec chmod 644 {} ;

всем файлам - 644

если необходимо применить действия только к определенным файлам, подходящим по маске, то действуем так:

find . -type f -name '.htm' -exec chmod 644 {} ;

а если нужно применить команду только к файлам или каталогам определенного владельца, то -

fiind . -type d -user fileowner -exec chmod 0755 {} ;