Le shell propose quelques options permettant de mettre au point des scripts shell.
L’option -x permet de visualiser les commandes telles qu’elles sont exécutées, c’est-à-dire après traitement des caractères spéciaux du shell.
Première syntaxe
Activer l’option :
set -x
Désactiver l’option :
set +x
Deuxième syntaxe
ksh
bash
set -o xtrace
set +o xtrace
Troisième syntaxe
Invoquer le shell interpréteur avec l’option -x :
$ ksh -x script
Exemple
Voici le script affiche.sh dans lequel une erreur a été introduite. Le développeur du script a, par inadvertance, écrit fic au lieu de $fic (ligne 4) :
$ nl affiche.sh 1 #! /usr/bin/ksh 2 echo "Nom du fichier a visualiser: \c" 3 read fic 4 if [[ -f fic ]] ; then 5 cat $fic 6 else 7 echo "Fichier inexistant" 8 fi
Exécution du script sans mise au point. Il semble surprenant (voire inquiétant ?) que le fichier /etc/passwd ne soit pas trouvé !
$ affiche.sh Nom du fichier a visualiser: /etc/passwd Fichier inexistant
Exécution du script en activant l’option -x. Ici l’option est passée en argument au shell interpréteur du script. Les lignes affichées pour la mise au point sont précédées d’un signe ...
Abonnement
tous les livres et vidéos ENI en illimité sans engagement
du livre imprimé ou du livre numérique