3

Как настроить все файлы * .java в текущем каталоге и все его подкаталоги, чтобы иметь разрешение на чтение для всех пользователей?

Я также хочу установить все файлы размером не менее 1 килобайта в текущем каталоге и во всех подкаталогах иметь группу администраторов.

4 ответа4

5

Альтернатива: чтобы установить разрешение на чтение для всех файлов .java в текущем каталоге, используйте эту команду:

chmod -R 444 *.java

Чтобы установить все файлы размером не менее 1 килобайта в текущем каталоге и все подкаталоги иметь группу администраторов.

find /yourdirectorypath -size +1k -exec chgrp admin {} \;

Примечание: «-R» обозначает рекурсив, который также будет охватывать ваши подкаталоги

2

Как настроить все файлы * .java в текущем каталоге и все его подкаталоги, чтобы иметь разрешение на чтение для всех пользователей?

В bash ≥4.0 и zsh:

chmod a+r ./**/*.java

В любой POSIX-совместимой системе (то есть в любом неантикварном варианте Unix и более):

find . -name '*.java' -exec chmod a+r {} +

Установите все файлы размером не менее 1 килобайта в текущем каталоге и во всех подкаталогах, чтобы иметь группу администраторов.

В зш:

chgrp admin ./**/*(.L+1023)

В любой POSIX-совместимой системе:

find . -type f -size +1023c -exec chgrp admin {} +
1

Используйте find и xargs

find . -name \*.java | xargs chmod o+r

или же

find . -name \*.java -print0 | xargs -0 chmod o+r

Вторая версия обрабатывает пробелы в именах файлов или каталогов.

Возможно, вам также потребуется исправить права доступа к каталогу.

find . -type d -print0 | xargs -0 chmod o+rx

Вы можете избежать обновления прав, которые уже верны. Проверьте справочную страницу для поиска и просмотра раздела о разрешениях.

0

Чтобы установить разрешение на чтение для всех файлов .java в текущем каталоге, используйте эту команду

chmod +r *.java

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .