Я хочу chmod
много файлов и каталогов. Как x
указывает список для каталогов и выполнить для обычных файлов, я хотел бы подать заявку rw
на файлы и rwx
для каталогов. Возможно ли использовать только chmod
команду?
Если это не так, какой самый удобный способ?
Это chmod -R 770
невозможно, так как я не хочу, чтобы обычные файлы стали исполняемыми.
linux
permissions
file-management
Исключен
источник
источник
Ответы:
Я делаю это иногда, используя одну
find
команду. Уродливый, но эффективный.источник
find . -type d -exec chmod -vc 755 "{}" \;
(в том числе-vc
для некоторых отзывов). (И, может быть, просто для пояснения, добавьте две отдельные команды к ответу?)Используйте разрешение X со страницы руководства:
Так что сделайте следующее:
Это удаляет бит выполнения из всех файлов и каталогов с последующим добавлением привилегий чтения и записи ко всем и привилегий выполнения только для каталогов. (Никакие обычные файлы больше не имеют бит выполнения с первого шага.)
источник
chmod -R a-x [directory]
последующимchmod -R a+rwX [directory]
?a-x
, каталог не будет доступен. Фактически, chmod завершается неудачно с запрещенным разрешением и не удаляет исполняемый бит из файлов в каталоге. Есть ли способ сделать это, не будучи root?Вы также можете использовать
find
вместе сxargs
:где
-type
указывает d irectory или ф ИОС.источник
xargs
достаточно умен, чтобы разбить длинные командные строки на несколько исполнений. Обратитесь к странице справочника xargs и обязательно проверьтеxargs --show-limits
.