Existem várias maneiras de fazer isso. O mais simples e pior é ter a senha no script, como você sugere. Como seu computador não está conectado à Internet, a maioria das preocupações de segurança é discutível e você pode usar a opção sudo
-S
que permite passar a senha de STDIN:
echo password | sudo -S shutdown -h now
Uma abordagem mais segura é permitir que um usuário específico execute o comando shutdown
sem senha. Primeiro, execute visudo
para editar o arquivo sudoers
e adicione esta linha:
nate ALL=NOPASSWD:/sbin/shutdown
Isso permitirá que o usuário nate
execute sudo /sbin/shutdown
sem que uma senha seja solicitada.