Verifica / altera a permissão da pasta no shell script

0

Estou escrevendo um script que baixa pacotes para uma pasta específica.

No entanto, quero possibilitar que todos os usuários façam o download de pacotes para essa pasta e usem quaisquer pacotes instalados lá. Como faço isso?

Eu quero verificar / alterar a permissão para a pasta /usr/local/src . Não sei como usar a instrução if / else corretamente. No texto vai parecer (eu acho): if stat/permission of src folder isn't 777 then chmod to 777

    
por Hudhud 11.10.2016 / 22:32

1 resposta

0

Você pode usar stat -c "%a" /usr/local/src para obter as permissões completas. Mas você deve considerar 1777 em vez de 777.

Então, algo como

if [ "$(stat -c '%a' /usr/local/src)" == "777" ]
then
  # something
else
  # something else
fi

Em resposta à sua outra pergunta, se as permissões já forem 777, não haverá efeito.

EDIT: erros corrigidos. @Alexej Magura por que eu usaria colchetes duplos? Tanto quanto eu estou ciente de que iria transformá-lo em uma expressão aritmética ..

    
por 11.10.2016 / 23:04