[TIPS] – POWERSHELL : Comment utiliser la commande switch

0
5146

La commande Powershell « switch » vous permettra de remplacer un long enchaînement de « if…elseif…elseif…else…. »

En terme de performance, lorsque vous souhaitez contrôler peu de valeurs différentes, les deux commandes se valent. Par contre si vous avez besoin de tester beaucoup de valeurs différentes, alors je vous conseillerais d’opter pour la commande switch.

 

Comparaison des commandes

Prenons pour exemple les deux scripts ci-dessous ou nous souhaitons effectuer des tâches différentes en fonction de la valeur de la variable « $Value ». Le premier script utilise la commande switch tandis que le second utilise un enchaînement de IF pour tester la variable.

  1. SCRIPT 1 : WITH SWITCH
  2. SCRIPT 2 : WITH IF
#######################################
######## SCRIPT 1 : WITH SWITCH #######
#######################################
#Variable
$Value = "Value1"

#Switch Statement with $Value
switch ($Value)
{
    #First state, if $Value = "Value"
    Value
    {
        echo "Test Value"
    }
    #Second state, if $Value = "Value1"
    Value1
    {
        echo "Test Value1"
    }
    #Third state, if $Value = "Value2"
    Value2
    {
        echo "Test Value2"
    }
    #Default state
    Default
    {
        echo "Test Default"
    }
}


##############################
###### SCRIPT 2 WITH IF ######
##############################
#Variable
$Value = "Value1"

#If with $Value condition
if($Value -eq "Value")
{
    echo "Test Value"
}
else if ($Value -eq "Value1")
{
    echo "Test Value1"
}
else if ($Value -eq "Value2")
{
    echo "Test Value2"
}
else
{
    echo "Test Default"
}

 

Exemples

Exemple 1 avec switch

Lorsque $Value = « Value1 » la commande powershell nous retourne :

Test Value1

TIPS-POWERSHELL -Comment-utiliser-la-commande-switch_01

 

Exemple 2 avec switch

Lorsque $Value = « Value10 » la commande powershell nous retourne la valeur par défaut puisqu’il n’existe pas de correspondance dans le switch :

Test Default

TIPS-POWERSHELL -Comment-utiliser-la-commande-switch_02

 

LAISSER UN COMMENTAIRE

Please enter your comment!
Please enter your name here