Parece que sempre que eu crio um arquivo com touchas permissões definidas para: -rw-r - r-- .
Existe alguma maneira de configurar as permissões touchou isso precisa ser feito depois com um comando diferente?
Parece que sempre que eu crio um arquivo com touchas permissões definidas para: -rw-r - r-- .
Existe alguma maneira de configurar as permissões touchou isso precisa ser feito depois com um comando diferente?
Respostas:
Você pode modificar seu umaskpara permitir (para a maioria das implementações) mais privilégios de leitura / gravação, mas não executáveis, pois geralmente as permissões solicitadas são 0666.
Se você umaské 022, você verá touchcriar um 0644arquivo.
Curiosamente, o POSIX descreve esse comportamento em termos de creat:
Se o arquivo não existir:
A função creat () é chamada com os seguintes argumentos:
O operando do arquivo é usado como argumento do caminho.
O valor do bit a bit-inclusive OR de
S_IRUSR,S_IWUSR,S_IRGRP,S_IWGRP,S_IROTH, eS_IWOTHé usado como o argumento modo.
e é apenas seguindo os links para creat, depois openobservando a menção umaske o rastreamento para open(e creat) para verificar se isso umaskdeve afetar touch.
Para umaskafetar apenas o touchcomando, use um subshell:
(umask 066; touch private-file)
(umask 0; touch world-writable-file)
touch file-as-per-current-umask
(observe que, em qualquer caso, se o arquivo existia anteriormente, touchnão alterará suas permissões, apenas atualize seus carimbos de data e hora).
Você pode manipular o umask. Geralmente ele é definido como 022que significa que quando um usuário cria um arquivo, ele terá permissão 0644, você pode manipular umaskde acordo com suas necessidades.