После того, как я подам заявку chmod -R
на каталог, разрешения меняются для всего внутри (файлы и каталоги). Как я могу добавить x
разрешения execute / search ( ) для каталогов без изменения файлов?
18
Вы можете использовать найти .
find ./ -type d -execdir chmod 750 {} +
Где 750 - режим, который вы хотите применить, а "./" - каталог, который вы будете искать рекурсивно.
РЕДАКТИРОВАТЬ : Благодаря @Gilles и find (1) , я пересмотрел это для дополнительной безопасности и производительности.
В этом конкретном случае вы можете использовать
X
вместоx
которого только добавляет биты в каталоги или файлы, в которых уже установлен исполняемый бит для некоторого пользователя (то естьchmod -R +X my_dir
).В целом (например , если вы хотите , чтобы все каталоги читаемые , не затрагивая файлы), можно либо использовать
find
с-type d
или если вы используете ЗШ (или Баш 4 сshopt -s globstar
) в**/
Glob (оба без прохождения-R
флага кchmod
).источник