Algum tempo atrás, escrevi um script bash que agora deve ser capaz de rodar em ambiente ash
.
No bash
era como:
services=( "service1.service"
"service2.service"
"service3.service" )
for service in "${services[@]}"
do
START $service
done
START()
{
echo "Starting "$1
systemctl start $1
}
Na realidade, existem cerca de 40 serviços em matriz, e quero fazer essa transição o mais simples e limpa possível. Sempre usaram bash
ismos. Agora estou em uma pitada com a tarefa de tornar os scripts mais portáteis.
Por motivos de portabilidade, provavelmente seria bom ter uma ash
solução pura . Mas, como tenho uma disposição bastante robusta busybox
, posso sacrificar alguma portabilidade. Somente se a legibilidade melhorar muito, já que o script "limpo" também é uma métrica.
O que seria uma solução portátil e limpa nesse caso?