Hi!
Zuerst: Ich weiss ich habs hier im Forum schon mal gesehen, konnte es aber leider nicht wieder finden, sry.
Mein Problem:
Ich hab diese Schleife hier:
while(true) do if [ $count -eq 8 ]; then count=1 fi echo "icon: $HOME/Desktop/gif/2/$count.png" >&3 count=$(echo "$count+1" | bc -l) sleep 0.1 done
Das Script stellt in der Taskleiste dann den "Progress Circle" dar, der laufen soll während XY ausgeführt wird.
Wenn ich dann aber das ausführe, kann ich logischerweise keine weiteren Aufgaben ausführen weil das Script ewig läuft und die Shell dadurch blockiert. Also hab ichs schon mit
exec 2> >(while(true); do if [ $count -eq 8 ]; then count=1; fi; echo "icon: $HOME/Desktop/gif/2/$count.png" >&3; count=$(echo "$count+1" | bc -l); sleep 0.1; done)
versucht, allerdings ohne Erfolg.
Weiß jemand wie das geht, oder was ich falsch mache?
PS: Zusatzfrage: Ich hab eigentlich auch keine Ahnung was der "Dateideskriptor" ist, den ich hier verwende, weiß aber sonst auch keiner den ich gefragt hab, evtl. weiß es hier jemand?
EDIT: Ich hab es jetzt auch schon mit dem & zum Schluss probiert, das funktioniert auch, allerdings kann ich es nur durch ein abruptes "killall script.sh" beenden. Ist das die einzige Möglichkeit?
lg,
losingYou