Basicamente (a segunda questão, é claro, sobre como o sudo
deve ser usado com mais eficiência), é uma questão de julgamento:
- No script, há três chamadas para
yum
. Se o script testou no início se está sendo executado comoroot
e o sudo teria que ser executado, isso tornaria um script mais simples. - Por outro lado, algumas pessoas podem comentar que executar exclusivamente como
root
torna menos seguro testar a parte interativa (caso você continue a desenvolver e expandir o script, incluindo a especificação do nomes de pacotes diretamente). Minha própria inclinação seria fornecer uma opção de linha de comando para permitir que o script fosse testado e apenas mostrasse (ou registre) os comandos correspondentes que seriam executados.
Por exemplo:
- o que acontece se
whiptail
não estiver instalado? - se
$choice
não for uma palavra, pode ser útil citá-la na instruçãocase
. - o que acontece se o yum reportar um erro (o usuário vê isso ou há outra chamada para
whiptail
depois)?