Gostaria de automatizar a alteração de permissões para arquivos copiados para um diretório. Por exemplo, todos os arquivos copiados para a pasta X devem ter o modo 755 e todos os arquivos copiados para a pasta Y devem ter o modo 700.
Por favor, informe, obrigado!
Responder1
Você pode usar umask
para isso. para descobrir o modo faça isso:
7777 -umask = novas permissões
por exemplo (linux):
777 -022 755
umask é 022, as permissões serão 755 para pastas e 644 para arquivos. Coloque algo como umask 0027
em seu ~/.profile para carregá-lo sempre que você fizer login.
ATUALIZAÇÃO (devido a um comentário cético):
$ umask
0077
$ ll
total 0
-rw-rw-rw- 1 jaroslav jaroslav 0 Nov 9 20:26 00
-rw-rw-rw- 1 jaroslav jaroslav 0 Nov 9 20:26 01
-rw-rw-rw- 1 jaroslav jaroslav 0 Nov 9 20:26 02
-rw-rw-rw- 1 jaroslav jaroslav 0 Nov 9 20:26 03
$ rm -rf ../copies/*; \
/bin/cp --no-preserve=mode,ownership * ../copies/; ll ../copies/
total 0
-rw------- 1 jaroslav jaroslav 0 Nov 9 20:33 00
-rw------- 1 jaroslav jaroslav 0 Nov 9 20:33 01
-rw------- 1 jaroslav jaroslav 0 Nov 9 20:33 02
-rw------- 1 jaroslav jaroslav 0 Nov 9 20:33 03
Responder2
Não acredito que seja possível fazer isso diretório por diretório usando permissões unix padrão. As ACLs, entretanto, podem fazer isso.