,

PowerShell : Lecture des entrées utilisateur

La cmdlet Read-Host récupère la saisie utilisateur et alimente la variable :

$user_answer = Read-Host "Saisir le nombre max"

On peut passer un message à Read-Host, il sera afficher lors de l'exécution. La commande termine systématiquement le message par ':', si on souhaite éviter ce comportement par défaut on affiche d'abord le message souhaité puis on invoque Read-Host sans message :

# Le message présenté ainsi est incorrect
$user = Read-Host "Quel est votre nom ?"
Quel est votre nom ?:
 
# Pour un message interrogatif de ce type 
Write-Host "Quel est votre nom ?" -NoNewline
$user = Read-Host
La valeur lue par Read-Host ne peut excéder 1022 caractères.

Pour la saisie de données confidentielles l'option -MaskInput permet de ne pas faire écho de la saisie (des astérisques sont affichés). Le paramètre -AsSecureString génère un objet spécifique : SecureString qui ne conserve pas de texte en clair en mémoire. Ce type d'objet est nécessaire pour certains usages comme le renouvellement de mot de passe.