L'utilisation de trap dans un script shell va permettre de gérer des actions en fonctions de différents signaux reçus.
Exemple :
Dans le script suivant, à la réception d'un signal HUP INT ou TERM, la fonction "fin" est appelée et le fichier $fileTmp est supprimé.
$ nl signaux.sh
	     1  #!/bin/bash
	     2
	     3  # Nom du fichier temporaire
	     4  fileTmp=/tmp/fileTemp
	     5
	     6  # Fonction appelée lors de la réception d'un signal HUP INT TERM
	     7  function fin {
	     8          echo -e "\nSuppression du fichier $fileTmp"
	     9          echo "Fin du script"
	    10          rm -f $fileTmp
	    11          ls $fileTmp
	    12          exit 1
	    13  }
	    14
	    15  # Paramétrage de la fonction "fin" à la réception d'un signal HUP INT TERM
	    16  trap fin HUP INT TERM
	    17
	    18  # Création du fichier temporaire
	    19  > $fileTmp
	    20
	    21  echo "Lancement du script"
	    22  # Vérification de la création du fichier temporaire
	    23  ls $fileTmp
	    24  sleep 100
	    25  echo "Arrêt du script"
	    26  exit 0
	$
Exécution du script :
$ ./signaux.sh
	Lancement du script
	/tmp/fileTemp
	^C     # Envoi du signal
	Suppression du fichier /tmp/fileTemp
	Fin du script
	ls: impossible d'accéder à /tmp/fileTemp: Aucun fichier ou dossier de ce type
	$