Utilizzare GNU parallel. È uno strumento incredibilmente potente e esistono pacchetti ufficiali per circa 20 distribuzioni di Linux. Cos'è quello? You have an excuse as to why you can't use it? Ecco un semplice esempio che mostra come eseguire un elenco o un file di comandi in parallelo:
Contenuto del jobs.txt
:
sleep 1; echo "a"
sleep 3; echo "b"
sleep 2; echo "c"
comando:
time parallel :::: jobs.txt
Risultati:
a
c
b
real 0m3.332s
user 0m0.170s
sys 0m0.037s
Note:
Se si desidera mantenere l'ordine come input, passare il flag -k
a GNU parallelo.
Se si dispone di più di otto core e si desidera elaborare solo con otto core, aggiungere -j 8
all'elenco di argomenti.
man page è una buona lettura, ma se non hai già letto this tutorial ti consiglio caldamente l'investimento nel tempo.
Vedere [Gestione processo] (http://mywiki.wooledge.org/ProcessManagement). –