Відповіді:
Ви можете використовувати find .
find ./ -type d -execdir chmod 750 {} +
Де 750 - це режим, який ви хочете застосувати, а "./" - каталог, в якому ви будете рекурсивно шукати.
EDIT : Завдяки @Gilles та find (1) я переглянув це для додаткової безпеки та продуктивності.
У цьому конкретному випадку ви можете використовувати X
замість цього x
лише додавання бітів до каталогів або файлів, у яких вже встановлений виконуваний біт для певного користувача (тобто chmod -R +X my_dir
).
В цілому (наприклад , якщо ви хочете , щоб все каталоги читаються , не зачіпаючи файли), можна або використовувати find
з -type d
або якщо ви використовуєте ЗШ (або Баш 4 з shopt -s globstar
) в **/
Glob (обидва без проходження -R
прапора до chmod
).