Altere propriedade ou permissões apenas em diretórios ou arquivos, de forma recursiva

5

Estou tentando definir permissões / propriedade em diretórios ou arquivos, recursivamente dentro de um determinado diretório, sem alterar o outro.

Por exemplo Eu tenho diretório / web onde eu quero definir todos os diretórios para 775, mas os arquivos para 664.

Existe uma maneira de fazer isso facilmente?

    
por xtfer 07.11.2010 / 07:47

2 respostas

13

Para arquivos:

$ find /path/to/directory -type f -print0 | xargs -0 chmod 664

Para diretórios:

$ find /path/to/directory -type d -print0 | xargs -0 chmod 775
    
por 07.11.2010 / 07:48
3

Como um complemento à resposta de ErikA, se eu fosse adivinhar o motivo que você queria fazer isso, você estava olhando para adicionar o bit de gravação para "grupo". Se for esse o caso, você pode evitar a dança de dois comandos e apenas executar:

chmod -R g+w /path/to/directory
    
por 07.11.2010 / 12:04