17 mars 2010

Scripts shell, le debug avec l'option -x

Vous venez de coder un script shell, tout beau, tout propre, bien indenté, mais voilà il ne fonctionne pas. Pourtant, vous le retournez dans tous les sens, vous intégrez des echo partout à chaque condition, chaque boucle if. Simplement ce script est coriace, il ne se laisse pas faire !

Mon collègue Ludovic m'a expliqué hier comment venir à bout des scripts difficiles, et ce avec un seule option à passer avant d'exécuter son script. Laquelle, me direz-vous ? Patience :)

C'est l'option -x que vous devrez utiliser et ce avec n'importe quel langage shell-like (ksh, bash, sh ...), il suffit de taper :

ksh -x monscript.ksh

et le tour est joué !

Une autre possibilité étant d'ajouter directement au sein du script cette commande :

set -x

Source :
http://www.cyberciti.biz/tips/debugging-shell-script.html

Exemple :
http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_02_03.html

Posté par fatihaelh à 10:53 - ksh - Commentaires [2] - Permalien [#]

Commentaires

    Bravo pour cette astuce bien pratique.

    Petite précision
    set -x
    ...code...
    set +x
    permettent de ne débugger que la partie voulue.

    Posté par dude, 24 mars 2010
  • Merci pour l'info !!

    Posté par Fatiha, 25 mars 2010

Poster un commentaire