Outils pour utilisateurs

Outils du site


dev:powershell:debogage_des_scripts

Ceci est une ancienne révision du document !


:TODO_DOCUPDATE:

PowerShell : Débogage des scripts

Un script ou une fonction peut se comporter comme une cmdlet compilée si on lui ajoute l'attribut CmdletBinding. On ajoute l'attribut en utilisant le décorateur [CmdletBinding()] dans le bloc Param(). Une fois l'attribut spécifié on peut utiliser les arguments -Verbose ou -Debug lors de l'exécution et les cmdlets associées Write-Verbose et Write-Debug.

Param(
   [CmdletBinding()]
   [Parameter(Mandatory)]
   [ValidateSet("Low","Average","High")]
   [String] $BatteryLevel
)
 
 
Write-Host "Niveau de batterie : ${1}", $SBatteryLevel
 
# Ce message n'est affiché que si l'option -Verbose est spécifiée lors de l'appel
Write-Verbose 'Ceci est un message supplémentaire pour mode verbeux'
 
# Ce message n'est affiché que si l'option -Debug est spécifiée lors de l'appel
Write-Debug 'Ceci est un message de debogage de script'

L'appel du script sans option :

.\aTestScript.ps1 -BatteryLevel Low
Niveau de batterie :  Low

Si le script est appelé avec l'option -Verbose :

.\aTestScript.ps1 -BatteryLevel Low -Verbose
Niveau de batterie :  Low
COMMENTAIRES : Ceci est un message supplémentaire pour mode verbeux

Si le script est appelé avec l'option -Debug :

.\aTestScript.ps1 -BatteryLevel Low -Debug
Niveau de batterie :  Low
DÉBOGUER : Ceci est un message de debogage de script

Utiliser les points d'arrêts

Le point d'arrêt suspend l'exécution du script et fournit une invite de commande en mode interactif dans le contexte d'exécution du script. On peut ainsi afficher les valeurs des variables taper des commandes et modifier le comportement du script.

On peut définir un point d'arrêt :

Set-PSBreakpoint -Script '.\aTestScript.ps1' -Line 9

Références

dev/powershell/debogage_des_scripts.1688401716.txt.gz · Dernière modification : 2023/07/03 16:28 de yoann