Paramètres de script PowerShell

De Linuxmemo.

(Différences entre les versions)
(commande Param())
(commande Param())
 
(2 versions intermédiaires masquées)
Ligne 15 : Ligne 15 :
     [hashtable] – Un Hashtable
     [hashtable] – Un Hashtable
==commande Param()==
==commande Param()==
-
Dans le code:
+
'''Dans le code:'''
  param(
  param(
  [string]$argumentduscript
  [string]$argumentduscript
  )
  )
  Write-Host "Vous avez saisi $argumentduscript."
  Write-Host "Vous avez saisi $argumentduscript."
-
Appel du script:
+
'''Appel du script:'''
  ./script -argumentduscript "coucou"
  ./script -argumentduscript "coucou"
  Vous avez saisi coucou.
  Vous avez saisi coucou.
-
Plusieurs paramètres (attention la ","):
+
'''Plusieurs paramètres (attention la ","):'''
  param(
  param(
  [string]$argumentduscript,
  [string]$argumentduscript,
Ligne 29 : Ligne 29 :
  )
  )
  Write-Host "Vous avez saisi $argumentduscript, $chiffre."
  Write-Host "Vous avez saisi $argumentduscript, $chiffre."
 +
'''Valeur par défaut:'''
 +
param(
 +
[string]$argumentduscript='valeurpardefaut'
 +
)
 +
Write-Host "Vous avez saisi $argumentduscript."
 +
 +
==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."

Version actuelle en date du 20 juillet 2017 à 14:48

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