Bem, a única coisa em que consigo pensar é
echo 'password' | sudo -S command
A -S
flag faz sudo
ler a senha da entrada padrão. Conforme explicado em man sudo
:
-S, --stdin
Escreva o aviso para o erro padrão e leia a senha da entrada padrão em vez de usar o dispositivo terminal. A senha deve ser seguida por um caractere de nova linha.
Portanto, para executar ls
com sudo
privileges, você faria
echo 'password' | sudo -S ls
Observe que isso produzirá um erro se o seu token de acesso sudo
estiver ativo, se você não precisar inserir sua senha porque já fez isso recentemente. Para contornar isso, você pode usar -k
para redefinir o token de acesso:
echo 'password' | sudo -kS ls
Não conheço nenhuma maneira de colocar você em um shell raiz real (como su
ou sudo -i
). Isso pode ser suficiente para o que você precisa embora.