Ich bin in Schwierigkeiten: mein Skript funktioniert nicht wie erwartet :)
Teil meines Codes:
readarray operations < operations.list
### lalala
for ((i=0; i<${#operations[@]}; i++)); do
echo "Perform ${operations[$i]}"
case ${operations[$i]} in
"dog rex" )
command1 & ;;
"cat sam" )
command2 & ;;
* )
command3 ;;
esac
done
Operations.list- Datei sieht aus wie
dog rex
cat sam
frog mike
monster jack
Ich erwarte, dass Command1 , Command2 und Command3 im Hintergrund ausgeführt werden müssen, aber es ist nicht. Was mache ich falsch?
Vielen Dank im Voraus und sorry für mein Englisch :)
1
Bitte bearbeiten und fügen Sie den Rest des Skripts hinzu.
DavidPostill
An der Syntax ist nichts auszusetzen. Sind Sie sicher, dass der Befehl {1,2,3} nicht ausgeführt wird, bevor Sie überprüfen, ob er ausgeführt wird?
Glenn Jackman
Warum die Gegenstimme? @DavidPostill: Ich glaube nicht, dass weitere Informationen hinzugefügt werden müssen.
MariusMatutiae
@MariusMatutiae Weil ich etwas wollte, das ich tatsächlich testen konnte ...
DavidPostill