Vor einiger Zeit habe ich ein Bash-Skript geschrieben, das jetzt in einer Umgebung mit ausgeführt werden kann ash
.
Darin bash
war wie:
services=( "service1.service"
"service2.service"
"service3.service" )
for service in "${services[@]}"
do
START $service
done
START()
{
echo "Starting "$1
systemctl start $1
}
In Wirklichkeit gibt es ungefähr 40 Dienste im Array, und ich möchte diesen Übergang so schmerzlos und sauber wie möglich gestalten. Ich habe immer bash
Ismen benutzt. Jetzt bin ich in der Klemme mit der Aufgabe, Skripte portabler zu machen.
Aus Gründen der Portabilität wäre es wahrscheinlich schön, eine reine ash
Lösung zu haben . Aber da ich einen ziemlich robusten busybox
zur Verfügung habe, könnte ich etwas Portabilität opfern. Nur wenn sich die Lesbarkeit stark verbessert, da "sauberes" Skript ebenfalls eine Metrik ist.
Was wäre in diesem Fall eine tragbare und saubere Lösung?