Não use sudo
em scripts, execute o script inteiro com permissões de root e use sudo -u YOURUSERNAME
para executar comandos sem permissões de raiz se isso for realmente necessário.
Escreva um script como este:
#!/bin/bash
npm start
Salve-o, torne-o executável com chmod +x /path/to/script
e inicie-o com permissões de root com:
sudo /path/to/script # from a terminal
gksudo /path/to/script # without terminal (e.g. for a starter)
kdesudo /path/to/script # without terminal, KDE equivalent
É tudo o que é preciso.
Você pode adicionar outros comandos ao script, você pode, por exemplo, verificar se ele foi iniciado como root e sair (graças a PerlDuck ):
[[ $EUID -ne 0 ]] && echo "This script must be run as root." && exit 1