PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Fortschrittsbalken bash



leon22
28-05-2007, 13:50
Hallo!

Nachdem ich schon einen einfachen Fortschrittsbalken in dieser Form programmiert habe:



echo -n $'__________________________________________]100%\r'"0["
for ((i = 0; i < 40; i++)); do
echo -n "+"
KOMMANDO &> /dev/null
done
echo


(leider ist das ja nur ein Pseudoanzeigebalken; wenn das Kommando abgearbeitet wird wird der Balken weitergezeichnet -> also keine Aussage über die tatsächliche Zeit )

Wie könnte man nun einen Balken programmieren der mir die tatsächlich benötigte Zeit für einen Prozess bestimmt und dann den Balken auf 100 % hochzählt ?

Vielen Dank schon mal für die Antworten !

mfg leon22

jan61
28-05-2007, 21:31
Hallo!

Nachdem ich schon einen einfachen Fortschrittsbalken in dieser Form programmiert habe:



echo -n $'__________________________________________]100%\r'"0["
for ((i = 0; i < 40; i++)); do
echo -n "+"
KOMMANDO &> /dev/null
done
echo


(leider ist das ja nur ein Pseudoanzeigebalken; wenn das Kommando abgearbeitet wird wird der Balken weitergezeichnet -> also keine Aussage über die tatsächliche Zeit )

Wie könnte man nun einen Balken programmieren der mir die tatsächlich benötigte Zeit für einen Prozess bestimmt und dann den Balken auf 100 % hochzählt ?

Vielen Dank schon mal für die Antworten !

mfg leon22

Wenn Du das Kommando nicht in den Hintergrund schickst, dann sollte doch der Balken erst dann weitergezeichnet werden, wenn das Kommando für einen Schleifendurchlauf durch ist. Ich kenne keine Möglichkeit, die Zeit vorauszuberechnen - das Kommando wird das i. d. R. selbst vorher nicht wissen - wer denn dann?

Jan