Bonjour à tous,

je travaille sur AIX 5.3

je cherche un moyen de bloquer un processus père tant que tous ses fils ne sont pas terminés.

je lance le process PERE.sh dans lequel sont lancés successivement plusieurs process "fils", disons 4 process (le but étant de faire du parralélisme)

exple :

blablabla...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
FILS_1.sh &
FILS_2.sh &
FILS_3.sh &
FILS_4.sh
blablabla...
fin du shell "père"

--> j'avais pensé utiliser la commande WAIT.

le pb c'est que si je fais :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
FILS_1.sh &
wait
FILS_2.sh &
wait
FILS_3.sh &
wait
FILS_4.sh
wait
le process père attendra que le 1er fils soit terminé, pour lancer le 2ème, etc...et du coup y'a plus de parralélisme !!

1ère question : est-ce que ceci fonctionne ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
FILS_1.sh &
FILS_2.sh &
FILS_3.sh &
FILS_4.sh
wait
wait
wait
wait
ou peut-être va t-il faire seulement le 1er wait et à attendre la fin d'un des 4 processus pour passer au 2ème wait??

2ème question : comment utilise t-on la commande "ps" avec un grep pour récupérer le pid de chaque process ?

merci bcp pour votre aide, je suis vraiment bloquée là :'(