[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Bash Hintergrundprozesse
[Thread Prev] | [Thread Next]
- Subject: Re: Bash Hintergrundprozesse
- From: Markus Hochholdinger <Markus@xxxxxxxxxxxxxxxxx>
- Date: Sat, 10 Dec 2005 03:15:56 +0100
- To: uugrn@xxxxxxxxxxxxxxx
Hi,
Am Samstag, 10. Dezember 2005 01:18 schrieb Werner Holtfreter:
> zur Beschleunigung meines Backupscripts moechte ich zwei Pruefsummen
> gleichzeitig errechnen lassen. Da die Dateien auf verschiedenen
> Festplatten liegen, duerfte das schneller gehen, als nacheinander:
>
> qsum=$(cksum $quelle) &
PID=$!
> zsum=$(cksum $ziel)
>
wait $PID
> if [ qsum = zsum ]; then
> echo "OK"
> else
> echo "FEHLER"
> fi
> Doch wie kann ich erreichen, dass der Test in "if" erst ausgefuehrt
> wird, wenn sowohl qsum als auch zsum fertig berechnet sind?
Von einem mit & gestarteter Prozess kann man auf der Shell in der Variablen $!
die Prozessnummer erfahren.
Mit wait kann man auf einen Prozess warten bis er nicht mehr laeuft.
Siehe auch "man bash".
> Reicht schon ein Klammern?:
> ( qsum=$(cksum $quelle) & zsum=$(cksum $ziel) )
Nein.
> Wird auch parallel gerechnet, wenn ich alles in den Test-Befehl
> schreibe?:
> if [ $(cksum $quelle) = $(cksum $ziel) ]; then
Hm, das weiss ich nicht.
--
Gruss
\|/
eMHa (o o)
------------------------------------------------------oOO--U--OOo--
Markus Hochholdinger
e-mail mailto:Markus@xxxxxxxxxxxxxxxxx .oooO
www http://www.hochholdinger.net ( ) Oooo.
------------------------------------------------------\ (----( )-
\_) ) /
(_/