Jakiś czas temu napisałem skrypt bash, który powinien być teraz w stanie działać w środowisku ash.
W bashtym było jak:
services=( "service1.service"
"service2.service"
"service3.service" )
for service in "${services[@]}"
do
START $service
done
START()
{
echo "Starting "$1
systemctl start $1
}
W rzeczywistości w tablicy jest około 40 usług i chcę, aby przejście to było jak najbardziej bezbolesne i czyste. Zawsze bashużywałem isms. Teraz mam problem z tym, aby skrypty były bardziej przenośne.
Ze względu na przenośność prawdopodobnie dobrze byłoby mieć czyste ashrozwiązanie. Ale ponieważ mam do dyspozycji dość solidny sprzęt, busyboxmogę poświęcić pewną przenośność. Tylko wtedy, gdy poprawia się czytelność, ponieważ „czysty” skrypt jest również miernikiem.
Co byłoby przenośnym i czystym rozwiązaniem w tym przypadku?