Paramètres de script PowerShell

De Linuxmemo.

Travailler avec les paramètres dans un script ou une fonction Powershell:

[modifier] Memo types

   [int] –  32-bit signed integer
   [long] – 64-bit signed integer
   [string] – Une chaine de caractères unicode
   [char] – Un caractère unicode sur 16 bit
   [byte] – Un caracètre 8 bit non signé
   [bool] – Un booléen (True ou False)
   [decimal] – Une valeur décimale de 128 bit
   [single] – Une valeur décimale avec 1 chiffre après la virgule
   [double] – Une valeur décimale avec 2 chiffres après la virgule
   [xml] – Un Objet XML
   [array] – Un tableau
   [hashtable] – Un Hashtable

[modifier] commande Param()

Dans le code:

param(
[string]$argumentduscript
)
Write-Host "Vous avez saisi $argumentduscript."

Appel du script:

./script -argumentduscript "coucou"
Vous avez saisi coucou.

Plusieurs paramètres (attention la ","):

param(
[string]$argumentduscript,
[int]$chiffre
)
Write-Host "Vous avez saisi $argumentduscript, $chiffre."

Valeur par défaut:

param(
[string]$argumentduscript='valeurpardefaut'
)
Write-Host "Vous avez saisi $argumentduscript."

[modifier] Rendre obligatoire les paramètres

En ajoutant [parameter(Mandatory=$true)] avant de déclarer la variable, nous la rendons obligatoire.

Dans le code:
param(
[parameter(Mandatory=$true)][string]$argumentduscript
)
Write-Host "Vous avez saisi $argumentduscript."
Outils personnels