Se eu entendi corretamente o que você está tentando fazer, você está colocando esse comando sudo
no script e esperando que o script solicite sua senha quando for executado lá? Nesse caso, você está apenas fazendo as coisas da maneira mais complicada.
Uma solução mais limpa é escrever o script da maneira usual (ou seja, sem sudo
) e executá-lo como superusuário . A razão por trás disso é que, se o script precisar de acesso de superusuário, basta dar o acesso (por que esperar até um certo comando?). No script, para verificar se está sendo executado como root, faça algo assim:
if [ "$(id -u)" != "0" ]; then
echo "This script must be run as root" 1>&2
exit 1
fi