[Eisfair_dev] Problem in ein Script für Update-chk --- Zeilenumbruch

Helmut Backhaus helmut.backhaus at gmx.de
Do Nov 29 14:23:13 CET 2018


Hallo Marcus,

Am 29.11.18 um 09:47 schrieb Marcus Roeckrath:
> Hallo Helmut,
> 
> Helmut Backhaus wrote:
> 
>> ich habe da ein kleines Problem mit einer Ausgabe.
>>
>> Auszug aus dem Script (/var/install/bin/update-chk03.sh):
>> --->
>> # Start update-chk01 with option "no" set var
>> mecho --stdbr "Update Checker is now looking for updates, this will take
>> a while!"
>> /var/install/bin/update-chk01.sh no &
>> script01=$(pgrep update-chk01.sh)
>>
>> # Checking if script is still running
>> while [ -n "$script01" ]
>> do
>>   script01=$(pgrep update-chk01.sh)
>>   mecho --stdbr "Update Checker is still working hard ..."
>>   sleep 20
>> done
>> <---
> 
> Du möchtest ja eine regelmäßige Ausgabe, damit der User nicht denkt, dass
> die Kiste hängt, weil das Sammalen der Infos ziemlich lange dauert.
> 
> Ich verwende für diese Zwecke z. B. folgenden Code:

Letztlich mache ich das Gleiche wie Du.
Nur durchsuche ich nicht die "ps" Ausgabe sondern nehme ein Tool welches
mir genau das liefert was ich brauche, die "pid". Dafür ist "pgrep"
gedacht (aber es kann noch viel mehr). Und da pgrep im Standard auf dem
Eis dabei ist nutze ich es halt.

Aber keine Angst, so schlau bin ich auch wieder nicht, dass habe ich mal
irgendwo bei Holger abgekupfert. :-))

Aber schau Dir mal die Hilfe von pgrep an (pgrep --help), das Teil ist
echt mächtig!

> 
>   /usr/bin/rsnapshot du 2>&1 >> "${_tmpfile}" &
>   _pid=$!
>   while (ps ax | egrep -q "^ *${_pid} ") ; do
>     mecho --warn -n "."
>     sleep 1
>   done
>   echo
> 
> Das pinselt pro Sekunde einen Punkt.
> 

Ich hab's probiert, dann stehen die ersten Punkte im Nirwanana. Und wie
soll es anders sein, unter xterm geht es problemlos.

-- 
Gruß,
Helmut



Mehr Informationen über die Mailingliste Eisfair_dev