Bonjour,
je voudrais écrire un script shell et j'aurais besoin d'aide en ce qui concerne l'envoi et la gestion des signaux.
Dans mon script je voudrais faire la chose suivante.
Dans une boucle (disons 10x ) je voudrais appeler une fonction qui fait un certain traitement.
Je voudrais que ces fonctions soient exécutées en parallèle.
Le "main" attend que toute les instances des fonctions soient terminées et puis se termine.
Je pense a l'utilisation des signaux. Le code ressemblerait a ceci:
myFunction est appelé en arriere plan avec "&". Après la boucle while, le main attend de recevoir 10x un signal de fin de fonction et puis se termine.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 #!/bin/bash function myFunction() { # faire qqch long ici echo "fonction finie" # envoyer signal ? } i=1 while [ $i -le 10 do myFunction & let "i+=1" done # Attendre ici que toutes les fonctions se terminent # trap un signal ici ? echo "Fin" exit 0;
Qu'en pensez vous ?
pourriez-vous me rediriger vers une doc montrant l'utilisation des signaux dans un script shell ?
Merci d'avance,
Tex
Partager