Comment terminer un script dans Windows PowerShell
-
Utilisez la commande
Exit
pour terminer un script dans Windows PowerShell -
Utilisez la commande
Throw
pour terminer un script dans Windows PowerShell -
la commande
Return
-
la commande
break
-
la commande
continue

Il existe de nombreuses façons de terminer un script dans Windows PowerShell. Cependant, certaines d’entre elles peuvent sembler similaires en termes de contexte, mais leur véritable but est différent les uns des autres en ce qui concerne la fonctionnalité.
Cet article énumérera les façons de terminer un script dans Windows PowerShell et les définira une par une.
Utilisez la commande Exit
pour terminer un script dans Windows PowerShell
La commande Exit
quittera votre script comme l’indique son nom. Si vous n’avez pas de session ouverte, cette commande fermera également votre fenêtre de shell ou de script. La commande Exit
est également utile pour fournir des retours en utilisant des codes de sortie.
exit
Exécuter simplement la commande exit
peut avoir un code de sortie de 0
(par défaut), ce qui signifie succès ou terminaison normale, ou 1
, ce qui signifie échec ou un jeté non intercepté.
Ce qui est excellent avec les codes de sortie, c’est qu’ils 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 afficher la variable $LASTEXITCODE
.
Exit.ps1
Write-Output 'Running sample script.'
exit 200
Code d’exemple :
PS C:\>powershell.exe .\Exit.ps1
PS C:\>Running sample script.
PS C:\>Write-Output $LASTEXITCODE
PS C:\>200
N’oubliez pas 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 sera également terminé.
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 terminaison. En général, la commande Throw
est utilisée à l’intérieur du bloc Catch
dans une expression Try-Catch
pour décrire adéquatement une exception.
Code d’exemple :
Try {
$divideAnswer = 1 / 0
}
Catch {
Throw "The mathematical expression has a syntax error"
}
Sortie :
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
retournera à son point d’appel précédent et ne fermera pas votre fenêtre de script.
En général, nous utilisons la commande Return
pour renvoyer des valeurs d’une fonction exécutée quelque part dans le script.
Code d’exemple :
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
Sortie :
3
la commande break
Nous utilisons la commande break
pour terminer des boucles et des cas.
Code d’exemple :
$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
}
Sortie :
1
2
3
4
5
6
7
Si nous avons des boucles imbriquées, nous ne cassons que depuis la boucle d’où la commande break
est appelée.
Code d’exemple :
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 voulez 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. Cependant, au lieu de terminer la boucle entière immédiatement, la commande continue
ne termine que l’itération actuelle et maintient la boucle active jusqu’à ce que toutes les itérations aient été traitées.
Nous pouvons dire que c’est une commande pour sauter quelque chose lors de l’exécution d’une boucle.
Code d’exemple :
$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
}
Sortie :
1
3
4
5
6
7
8
Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.
LinkedIn