Si vous rencontrez beaucoup ce genre de choses, essayez Parallel . C'est comme dsh (shell distribué) mais a quelques fonctionnalités intéressantes comme le comptage des sémaphores et il est activement maintenu.
De la documentation:
EXEMPLE: GNU Parallel comme système de file d'attente / gestionnaire de lots
GNU Parallel peut fonctionner comme un simple système de file d'attente de travaux ou gestionnaire de lots. L'idée est de mettre les jobs dans un fichier et de faire lire GNU Parallel en continu. Comme GNU Parallel s'arrêtera à la fin du fichier, nous utilisons tail pour continuer la lecture:
echo >jobqueue; tail -f jobqueue | parallel
Pour soumettre vos travaux à la file d'attente:
echo my_command my_arg >> jobqueue
Vous pouvez bien sûr utiliser -S pour distribuer les tâches aux ordinateurs distants:
echo >jobqueue; tail -f jobqueue | parallel -S ..
Il existe de nombreux exemples qui ne font qu'effleurer la surface. En voici une cool.
EXEMPLE: Distribution du travail aux ordinateurs locaux et distants
Convertissez * .mp3 en * .ogg en exécutant un processus par cœur de processeur sur l'ordinateur local et le serveur2:
parallel --trc {.}.ogg -j+0 -S server2,: \
'mpg321 -w - {} | oggenc -q0 - -o {.}.ogg' ::: *.mp3