[fli4l] Skript: Ab?==?utf-8?Q?frage + Verarbeitung des Zu?==?utf-8?Q?stands mehrerer Geräte - gen?==?utf-8?Q?erisch gehalten

K. Dreier usenetforum at gmx.net
Mo Mär 13 13:45:41 CET 2017


Hallo Thomas,

danke fürs Feedback!

> So etwas geht ganz allgemein mit Listen oder Arrays

Ok. Ich habe da mal etwas rumgelesen und habe mehrere Sachen gefunden.
Nicht ganz klar ist immer, was davon auch unter sh läuft und nicht nur
unter bash. Kann noch nicht testen, deswegen zunächst mal ein paar
Ideen meinerseits. Feedback wäre toll.
Zunächst geht es erstmal um das korrekte Definieren des Arrays. Die
Verarbeitung kommt dann im nächsten Schritt.

Variante 1:

devices=""
devices="${devices} DEVICENAME1"
devices="${devices} DEVICENAME2"
devices="${devices} DEVICENAME3"

# one name at a time
for device in ${devices}; do
echo ${device};
done
# all together now
echo ${devices}

--> für mich ist die visuelle Ausgabe der devices nicht relevant, da
ich nur den Inhalt der Variable/des Arrays brauche im Rahmen der
"Verarbeitung". Die obige Darstellung ist also nur des Prinzips wegen
hier und zum Testen.

# count and output elements/devices in array, where the count starts at
0
devices_amount=${#devices[@]}

# dieser Teil wird so vermutlich nicht funktionieren; auch sehe ich
aktuell gar keinen Grund, die devices zu zählen?!
for i=0; i<${devices_amount}; i++;
do
echo ${#devices[@]}
done

Variante 2 zum Definieren des Arrays:

devices[0]="DEVICENAME0"
devices[1]="DEVICENAME1"
devices[2]="DEVICENAME2"
devices[3]="DEVICENAME3"
echo "First Method: ${devices[*]}"
echo "Second Method: ${devices[@]}"

Gibt es hier Dinge, die a) mit sh nicht funktionieren und/oder
b)generell falsch sind? Welche der beiden Varianten wäre richtig unter
/bin/sh?

Gruß
Klaus


Mehr Informationen über die Mailingliste Fli4L