Viele Befehle und Kommandozeilenprogramme laufen in der Shell als Prozess nur mit einem Thread – auch auf heute üblichen Mehrkern-CPUs. Es gibt diverse Tricks in der Shell, dort einen Prozess für Dateioperationen mittels xargs sowie langen Befehlsketten sicher auf mehrere Threads aufzuteilen. Einfacher macht das die Ergänzung Forkrun.
Die Bash-Ergänzung Forkrun (https://github.com/jkool702/forkrun) ist als Shell-Script programmiert und dient als Ersatz für xargs aus dem Standardrepertoire. Generell dient dieser Befehl dazu, Eingaben per Befehlsverkettung weiterzuverarbeiten und beispielsweise auf eine Liste von Dateien jeweils ein Kommando auszuführen. Forkrun verhält sich identisch, verarbeitet übergebene Listen parallel in mehreren Prozessen und wird damit dramatisch schneller auf Mehrkern-Systemen. Die Einrichtung von Forkrun erfolgt über die Einbindung der Script-Datei in der Konfigurationsdatei „~/.bashrc“. Es braucht also keine root-Berechtigungen, um mit Forkrun zu arbeiten. Zur Einrichtung auf dem Linux-System öffnet die kurze URL https://m6u.de/forkrun den Quellcode des Scripts im Browser, um es als „.fork
run“ im Home-Verzeichnis zu speichern. Nun lädt man die „~/.bashrc“ in einen Texteditor und trägt dort ganz unten den Verweis
source ~/.forkrun
ein. Nach dem Speichern heißt es wieder, das Terminal zu beenden und neu zu starten, damit die neue Funktion zur Verfügung steht. Dazu ein praktisches Anwendungsbeispiel:
find ./ -type f | forkrun sha256sum >SHA256.txt
Dies errechnet aus allen Dateien im aktuellen Verzeichnis deren SHA256-Checksumme und schreibt diese in die Textdatei „SHA256.txt“. Dabei werden nun alle CPU-Kerne eingespannt und nicht nur einer wie in diesem herkömmlichen xargs-Befehl:
find ./ -type f | xargs sha256sum >SHA256.txt
Forkrun arbeitet durch Parallelisierung um etliche Faktoren schneller, was sich laut den eigenen Messungen dessen Entwicklers bei allen Prozessen ab 50 Millisekunden Laufzeit bemerkbar macht.

