como chown apenas pastas de efeito, não arquivos?

como chown apenas pastas de efeito, não arquivos?

Eu tenho que chmod uma estrutura de subpastas que contém mais subpastas e também arquivos naturalmente.

Agora preciso alterar os direitos de acesso (proprietário: grupo, sem acl neste momento) para esta estrutura completa da mesma maneira. Só quero 775 para pastas, mas 664 para arquivos. Como posso conseguir isso? man chownnão parece dar uma solução, então pensei em um cachimbo finde chownconsegui fazer. Meu conhecimento sobre tubos é bastante básico. Acho que você dá um comando e envia a saída desse comando através do segundo comando.

find -type d | chmod -R 775 *

é o meu palpite, mas não respeita a saída do meu findcomando. Provavelmente o '*' no comando chown anula a saída de findalguma forma

alguma idéia de como ajustar isso a meu favor?

Responder1

Nãouse o -Rsinalizador with chmod, o que o torna recursivo (aplicável a todas as pastas e arquivos contidos nos argumentos). Usar:

find . -type d -exec chmod 775 {} +

Responder2

Atualização: eu interpretei mal, veja @muru não use -R Isso pode funcionar:

chmod 775 $(find -type d)

É chamadosubstituição de comando

informação relacionada