Forum Programmation.shell Signaux et trap en Bash

Posté par  .
Étiquettes : aucune
0
13
mai
2006
J'expérimente présentement avec l'énoncé trap de Bash.

echo Mon PID=$$
export NB=0
trap "NB=$((NB+1)); echo NB1=$NB" SIGUSR1
while true; do
sleep 1
echo NB2=$NB
done

Dans une autre fenêtre, j'envoie des signaux, avec:

kill -s SIGUSR1 numéro_du_pid

Si j'envoie 2 signaux, je recois:
NB2=0
NB1=0
NB2=1
NB1=0
NB2=1
Le compteur est manifestement incorrect mais je ne comprends pas pourquoi.
Il semble que le trap n'ait pas un environnement normal. Quelqu'un est-il renseigné à ce sujet?
Merci