[shell unix] scripts parallèles

bonjour, dans mon script j'ai écrit :
for var in ...
do
	exec script.ksh $var &
done


Le problème c que je souhaite qu'il attende d'avoir à chaque fois fini script.ksh pour continuer la boucle avec l'argument $var suivant.

j'ai essayé avec exec script.ksh $var (sans le &) mais ca ne marche pas car il ne revient pas au script de départ et s'arrête complètement après le 1er tour de la boucle for.

Merci de votre aide.
Configuration: ksh

2 réponses

  1. Bonjour,

    comme exec remplace le shell, il te suffit de l'enlever ...
    Ton script devient :

    for var in ...
    do
    script.ksh $var
    done

    voili voilà
    1. Contributeur
      Salut jebok,

      Comment ton script "script.ksh" se termine-t-il ? Il me semble que le "exec" utilisé dans ksh avec un script équivaut au point ". " qui a pour effet d'inclure le source du script appelé dans le script courant (le but de "exec" étant de lancer le script dans le même processus). Dans ce cas un "exit" arrêterai le script principal.. il faudrait tester.

      Sinon as-tu essayé en supprimant "&" et "exec" aussi ?

      Dal