GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Bash-Skript, das eine begrenzte Anzahl von Befehlen parallel verarbeitet

Siehe parallel. Seine Syntax ähnelt der von xargs , aber es führt die Befehle parallel aus.


Verwenden Sie die wait eingebaut:

process1 &
process2 &
process3 &
process4 &
wait
process5 &
process6 &
process7 &
process8 &
wait

Für das obige Beispiel verarbeitet 4 process1 ... process4 im Hintergrund gestartet, und die Shell würde warten, bis diese abgeschlossen sind, bevor sie den nächsten Satz startet.

Aus dem GNU-Handbuch:

wait [jobspec or pid ...]

Warten Sie, bis der untergeordnete Prozess, der durch jede Prozess-ID pid oder Jobspezifikation jobspec angegeben ist, beendet wird, und geben Sie den Exit-Status des letzten Befehls zurück, auf den gewartet wurde. Wenn eine Jobspezifikation angegeben ist, wird auf alle Prozesse im Job gewartet. Wenn keine Argumente angegeben werden, wird auf alle derzeit aktiven untergeordneten Prozesse gewartet, und der Rückgabestatus ist null. Wenn weder jobspec noch pid einen aktiven untergeordneten Prozess der Shell angeben, ist der Rückgabestatus 127.


Linux
  1. Wie führe ich Linux-Bash-Befehle in einem PERL-Skript aus?

  2. Wie debuggt man ein Bash-Skript?

  3. Bash:Warte mit Timeout

  4. Führen Sie den Bash-Befehl auf der Jenkins-Pipeline aus

  5. Werden Befehle in einem Bash-Skript parallel oder nacheinander ausgeführt?

Automatisieren Sie die Bildverarbeitung mit diesem Bash-Skript

Bash-Wartebefehl

Bash für Schleife

35 Bash-Skriptbeispiele

So führen Sie ein Bash-Skript aus

Shell/Bash-Skript zum Finden von Primzahlen in Linux