Como alterar as permissões no Linux

Como alterar as permissões no Linux

Como defino todos os arquivos *.java no diretório atual e todos os seus subdiretórios para terem permissão de leitura para todos os usuários?

Também quero definir todos os arquivos de pelo menos 1 kilobyte de tamanho no diretório atual e todos os subdiretórios para terem um grupo de administradores.

Responder1

Alternativa:Para definir a permissão de leitura para todos os arquivos .java no diretório atual, use este comando:

chmod -R 444 *.java

Para definir todos os arquivos de pelo menos 1 kilobyte de tamanho no diretório atual e todos os subdiretórios para terem um grupo de administradores.

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

Observação:o "-R" indica recursivo que também cobrirá seus subdiretórios

Responder2

Como defino todos os arquivos *.java no diretório atual e todos os seus subdiretórios para terem permissão de leitura para todos os usuários?

No bash ≥4,0 e zsh:

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

Em qualquer sistema compatível com POSIX (ou seja, qualquer variante unix não antiga e mais):

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

Defina todos os arquivos de pelo menos 1 kilobyte de tamanho no diretório atual e todos os subdiretórios para terem um grupo de administradores.

Em zsh:

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

Em qualquer sistema compatível com POSIX:

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

Responder3

Use localizar e xargs

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

ou

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

A segunda versão lida com espaços em nomes de arquivos ou diretórios.

Talvez seja necessário corrigir as permissões do diretório também.

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

Você pode evitar a atualização de permissões que já estão corretas. Verifique a página de manual para localizar e revisar a seção sobre permissões.

Responder4

Para definir a permissão de leitura para todos os arquivos .java no diretório atual, use este comando

chmod +r *.java

informação relacionada