
Quero executar um script, mas o script contém alguns cd
s, então tenho que executá-lo assim
. /scriptfile
Isso funciona, mas também tenho alguns sudo
s no script. Enquanto tudo está funcionando, eu queria tentar executar o script inteiro para sudo
poder remover todos sudo
os s do arquivo de script.
Mas não consegui executar o seguinte (com sudo
)
sudo . /scriptfile
ao tentar correr eu consigo
sudo: .: command not found
Existe alguma solução alternativa para isso?
Responder1
Você precisa correr
sudo ./scriptfile
Você tentou
sudo . /scriptfile
que é diferente devido ao espaço após o ponto. .
ou seu equivalente source
é um shell embutido, não um comando. É por isso que o comando que você tentou produz o erro sudo: .: command not found
.
Observação:
./scriptfile
irá executar o arquivo com o nome scriptfile
no diretório atual. O arquivo precisa ser executável.
. /scriptfile
irá originar o arquivo /scriptfile
(lembre-se de que este é um caminho absoluto aqui). O arquivo não precisa ser executável para fazer isso, ele só precisa ser legível.
Responder2
Corra sudo su
de antemão, então você pode simplesmente correr./scriptfile