Die meisten Bash-Skripte für die Batch-Dateiverarbeitung könnten beschleunigt werden, indem mehrere Prozesse gestartet werden, um alle Kerne zu nutzen. Ich möchte ein Skript erstellen, das eine Reihe von Dateien verarbeitet und die Anzahl der zu verarbeitenden Dateien gleichmäßig auf die Prozesse verteilt. Wie mache ich das?
bash
multiple-instances
sudo
quelle
quelle
Ich weiß nicht, ob dies der schönste Weg ist, aber hier ist, worauf ich gekommen bin.
Verwendungszweck:
batch.sh [number of processes to use]
batch.sh:
helper.sh:
Dies erzeugt n Prozesse, die jeweils eine Datei verarbeiten und dann (n - 1) Dateien überspringen. Process (i mod n) verarbeitet die i-te Datei.
quelle