Mercredi - Fonctions Trappe
Utilisez une fonction si vous avez besoin d’un gestionnaire de trappes plus sophistiqué :
$ cat trap2 #!/bin/bash
handlehup () { echo "J'ai eu un HUP" echo "Je vais maintenant recharger ma configuration" #...... }
trap "handlehup" HUP
while true; do echo "Hello........" # utiliser sleep pour représenter un long bloc de code sleep 1 done
Si un signal HUP est envoyé à ce script, il sera attrapé par ‘trap’ et la fonction ‘handlehup’ sera exécutée. Lorsque la fonction sera terminée, le script continuera son exécution au point où il s’était arrêté.
$ ./trap2
Hello……..
J’ai eu un HUP
Je vais maintenant recharger ma config
Hello……..
^C
$
Dans une autre fenêtre (en utilisant la fonction de l’astuce de Lundi) :
$ killsig HUP trap2
Le signal HUP signal (hangup) est généralement utilisé pour indiquer au process de recharger configuration et de redémarrer. Apache répondar à un signal HUP de cette manière (bien que l’on utilise ‘apachectl’ en général).
Si vous souhaitez en apprendre plus sur Mac OS X Unix visitez le Learning Center
cliquez ici.
- Pour les débutants : Le Tutoriel Mac OS X Unix
- Pour plus d’informations sur des sujets spécifiques : Mac OS X Advanced Unix
- Pour des réponses à des problèmes communs : Mac OS X How To
Chargement
Commentaires récents