Terminer un script dans Windows PowerShell

  1. Utiliser la commande Exit pour terminer un script dans Windows PowerShell
  2. Utilisez la commande Throw pour terminer un script dans Windows PowerShell
  3. La commande Return
  4. La commande break
  5. La commande continue
Terminer un script dans Windows PowerShell

Il existe de nombreuses façons de mettre fin à un script dans Windows PowerShell. Cependant, certains d’entre eux peuvent sembler similaires en termes de contexte, mais leur objectif réel est différent les uns des autres en ce qui concerne les fonctionnalités.

Cet article énumérera les façons de mettre fin à un script dans Windows PowerShell et de les définir une par une.

Utiliser la commande Exit pour terminer un script dans Windows PowerShell

La commande Exit quittera votre script tel que dérivé de son nom. Si vous n’avez pas de session ouverte, cette commande fermera également votre shell ou votre fenêtre de script. La commande Exit est également utile pour fournir des commentaires à l’aide de codes de sortie.

exit

Exécuter uniquement la commande exit peut avoir un code de sortie de 0 (par défaut), ce qui signifie un succès ou une fin normale, ou 1, ce qui signifie un échec ou un lancer non intercepté.

Ce qui est excellent avec les codes de sortie, c’est que les codes de sortie sont entièrement personnalisables. Tant que le code de sortie est un entier, le code de sortie est valide. De plus, pour connaître le dernier code de sortie, vous pouvez sortir la variable $LASTEXITCODE.

Exit.ps1

Write-Output 'Running sample script.'
exit 200

Exemple de code :

PS C:\>powershell.exe .\Exit.ps1
PS C:\>Running sample script.
PS C:\>Write-Output $LASTEXITCODE
PS C:\>200

N’oubliez pas non plus que lorsque vous appelez un autre fichier PowerShell avec une commande exit à partir d’un script PowerShell en cours d’exécution, le script en cours d’exécution se terminera également.

Utilisez la commande Throw pour terminer un script dans Windows PowerShell

La commande Throw est similaire à la commande Exit avec un code de sortie mais est beaucoup plus informative. Vous pouvez utiliser la commande et une expression personnalisée pour générer des erreurs de fin. Habituellement, la commande Throw est utilisée à l’intérieur du bloc Catch à l’intérieur d’une expression Try-Catch pour décrire une exception de manière adéquate.

Exemple de code :

Try{
    $divideAnswer = 1/0
}Catch{
    Throw "The mathematical expression has a syntax error"
}

Production :

The mathematical expression has a syntax error
At line:4 char:5
+     Throw "The mathematical expression has a syntax error"
+     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationStopped: (The mathematica... a syntax error:String) [], RuntimeException
    + FullyQualifiedErrorId : The mathematical expression has a syntax error

La commande Return

Contrairement à la commande Exit, la commande Return reviendra à son point d’appel précédent et ne fermera pas votre fenêtre de script.

Habituellement, nous utilisons la commande Return pour renvoyer les valeurs d’une fonction exécutée quelque part dans le script.

Exemple de code :

Function sumValues($int1,$int2){
	Return ($int1 + $int2)
}

# The function sumValues is called below, and the script will return to 
# the same line with a value and store it in the output variable
$output = sumValues 1 2 

Write-Output $output

Production :

3

La commande break

Nous utilisons la commande break pour terminer les boucles et les cas.

Exemple de code :

$numList = 1,2,3,4,5,6,7,8

foreach($number in $numList){
    if ($number -eq 8){
        #Terminate loop if number variable is equal to 8
         break
    }

    Write-Output $number
}

Production :

1
2
3
4
5
6
7

Si nous avons des boucles imbriquées, nous ne rompons que la boucle à partir de laquelle la commande break est appelée.

Exemple de code :

While ($true) {
    While ($true) {
        #The break command will only break out of this while loop
        break
    }
   #The script will continue to run on this line after breaking out of the inner while loop
}

Si vous souhaitez sortir d’une boucle imbriquée spécifique, la commande break utilise des étiquettes comme paramètre.

While ($true) {
    :thisLoop While ($true) {
        While ($true) {
	        #The break command below will break out of the `thisLoop` while loop.
            Break thisLoop
        }
    }
}

La commande continue

La commande continue termine également le script au niveau de la boucle. Pourtant, au lieu de terminer la boucle entière instantanément, la commande continue ne termine que l’itération en cours et maintient la boucle jusqu’à ce que toutes les itérations aient été traitées.

On peut dire qu’il s’agit d’une commande pour sauter quelque chose lors de l’exécution d’une boucle.

Exemple de code :

$numList = 1,2,3,4,5,6,7,8

foreach($number in $numList){
    if ($number -eq 2){
        #The continue command below will skip number 2 and will directly process the next iteration, resetting the process to the top of the loop.
        continue
    }

    Write-Output $number
}

Production :

1
3
4
5
6
7
8
Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn

Article connexe - PowerShell Script