Je cherche un moyen pour qu'un script PowerShell demande un paramètre qui doit être obligatoire, mais affiché avec une valeur par défaut, par exemple :
.\psscript
Supply values for the following parameters:
parameter1[default value]:
parameter2[1234]:
Je veux demander des données mais fournir des valeurs par défaut.
Si j'utilise l'option obligatoire, il demande les valeurs correctement mais ne montre pas la valeur par défaut ou ne traite pas la valeur donnée. Si je n'utilise pas l'option obligatoire, PowerShell ne demande pas la valeur du tout.
Voici quelques exemples de script que j'ai essayés :
[CmdletBinding()]
Param(
[parameter(Mandatory=$true)] $SqlServiceAccount = $env:computername + "_sa",
[parameter(Mandatory=$true)] $SqlServiceAccountPwd
)
Ce script demande des paramètres mais ne montre pas ou ne traite pas la valeur par défaut si j'appuie simplement sur la touche entrée du premier paramètre.
[CmdletBinding()]
Param(
[parameter(Mandatory=$false)] $SqlServiceAccount = $env:computername + "_sa",
[parameter(Mandatory=$true)] $SqlServiceAccountPwd
)
Ce script ne demande pas le premier paramètre, mais traite la valeur par défaut.