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

Fermé
max759 - 8 janv. 2014 à 12:05
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 - 8 janv. 2014 à 13:12
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 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
8 janv. 2014 à 12:13
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 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
8 janv. 2014 à 13:12
hello
en n'utilisant pas &, les commandes s'exécutent séquentiellement
for C in {1..100}; do cmd ; done
0