Sommaire

Mise au point d’un script

Le shell propose quelques options permettant de mettre au point des scripts shell.

1. Option -x

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

Activer l’option :

set -o xtrace 

Désactiver l’option :

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 "+". On constate ...