Vor einiger Zeit habe ich ein Bash-Skript geschrieben, das jetzt in einer Umgebung mit ausgeführt werden kann ash.
Darin bashwar 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 bashIsmen 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 ashLösung zu haben . Aber da ich einen ziemlich robusten busyboxzur 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?