Daemotron
Well-Known Member
Moin,
ich bastle gerade an einem Backup-Skript, bei dem ich folgendermaßen vorgehen will:
So müsste ich aber 50 Prozesse parallel starten, die wahrscheinlich den Storage in die Knie zwingen würden - oder immer warten, bis alle parallel gestarteten Jobs abgearbeitet sind. Die Frage ist also: Wie bekomme ich eine Art Warteschlange hin, so dass sobald ein Prozess beendet ist, der nächste nachgeschoben wird, bis die Warteschlange abgearbeitet ist?
ich bastle gerade an einem Backup-Skript, bei dem ich folgendermaßen vorgehen will:
- markiere den zu sichernden Stand per ZFS snapshot auf allen betroffenen Datasets
- arbeite die Snapshots nach und nach ab, mit einer begrenzbaren Anzahl parallel arbeitender Prozesse
Code:
#!/bin/sh
do_nix() {
sleep $1
echo "bin feddich"
return 0
}
do_nix 6 &
pid1=$!
echo "$pid1 started"
do_nix 4 &
pid2=$!
echo "$pid2 started"
wait
echo "jetz iss alles feddich"