Exécuter un programme dans une boucle de manière séquentielle

max759 -  
dubcek Messages postés 19025 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Dans le cadre d'un projet, je doit lancer un programme sur plusieurs centaines d'instances, et je voudrais faire cela avec un script shell.

J'utilise une boucle for, et cela marche plutôt bien, cependant toutes les exécutions se font en même temps, i.e. le script me lance plusieurs centaines de fois mon programme, une fois par instance. Or, j'aimerais que le script ne démarre le lancement d'une nouvelle instance seulement quand la précédente est terminée. Autrement dit, que seule une exécution de mon programme se fasse à la fois.

Auriez-vous une idée de la commande (option, peut-être ?) à utiliser ?

Merci.
A voir également:

2 réponses

zipe31 Messages postés 38797 Date d'inscription   Statut Contributeur Dernière intervention   6 435
 
Salut,

je doit lancer un programme sur plusieurs centaines d'instances

Si on pouvait voir ton script (ou tout au moins la boucle) et savoir comment tu lis tes instances (fichiers, stdin, autres, etc. ?), on pourrait peut-être d'aider au mieux ;-\
0
dubcek Messages postés 19025 Date d'inscription   Statut Contributeur Dernière intervention   5 640
 
hello
en n'utilisant pas &, les commandes s'exécutent séquentiellement
for C in {1..100}; do cmd ; done
0