Read-Host
Lit une ligne d’entrée à partir de la console.
Syntaxe
AsString (Par défaut)
Read-Host
[[-Prompt] <Object>]
[-MaskInput]
[<CommonParameters>]
AsSecureString
Read-Host
[[-Prompt] <Object>]
[-AsSecureString]
[<CommonParameters>]
Description
L’applet de commande Read-Host lit une ligne d’entrée à partir de la console (stdin). Vous pouvez l’utiliser pour inviter un utilisateur à entrer une entrée. Étant donné que vous pouvez enregistrer l’entrée sous forme de chaîne sécurisée, vous pouvez utiliser cette applet de commande pour inviter les utilisateurs à entrer des données sécurisées, telles que des mots de passe.
Remarque
Read-Host a une limite de 1022 caractères qu’il peut accepter comme entrée d’un utilisateur.
Exemples
Exemple 1 : Enregistrer l’entrée de la console dans une variable
Cet exemple affiche la chaîne « Please enter your age: » comme invite. Lorsqu’une valeur est entrée et que la touche Entrée est enfoncée, la valeur est stockée dans la variable $Age.
$Age = Read-Host "Please enter your age"
Exemple 2 : Enregistrer l’entrée de console sous forme de chaîne sécurisée
Cet exemple montre comment afficher la chaîne « Entrer un mot de passe : » comme invite. Comme une valeur est entrée, les astérisques (*) apparaissent sur la console à la place de l’entrée. Lorsque la touche Entrée est enfoncée, la valeur est stockée en tant qu’objet SecureString dans la variable $pwd_secure_string.
$pwd_secure_string = Read-Host "Enter a Password" -AsSecureString
Exemple 3 : Masquer l’entrée et l’afficher sous forme de chaîne en texte brut
Cet exemple montre comment afficher la chaîne « Entrer un mot de passe : » comme invite. Comme une valeur est entrée, les astérisques (*) apparaissent sur la console à la place de l’entrée. Lorsque la touche Entrée est enfoncée, la valeur est stockée en texte brut objet String dans la variable $pwd_string.
$pwd_string = Read-Host "Enter a Password" -MaskInput
Paramètres
-AsSecureString
Indique que l’applet de commande affiche des astérisques (*) à la place des caractères que l’utilisateur tape comme entrée. Lorsque vous utilisez ce paramètre, la sortie de l’applet de commande Read-Host est un objet SecureString (System.Security.SecureString).
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
AsSecureString
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-MaskInput
Indique que l’applet de commande affiche des astérisques (*) à la place des caractères que l’utilisateur tape comme entrée. Lorsque vous utilisez ce paramètre, la sortie de l’applet de commande Read-Host est un objet String.
Cela vous permet de demander en toute sécurité un mot de passe qui est renvoyé en texte clair au lieu de SecureString.
Ce paramètre a été ajouté dans PowerShell 7.1.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
AsString
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Prompt
Spécifie le texte de l’invite. Tapez une chaîne. Si la chaîne inclut des espaces, placez-la entre guillemets. PowerShell ajoute un signe deux-points (:) au texte que vous entrez.
Propriétés du paramètre
| Type: | Object |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | 0 |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
CommonParameters
Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.
Entrées
None
Cette applet de commande n’accepte pas les entrées du pipeline PowerShell.
Sorties
System.String or System.Security.SecureString
Si le paramètre AsSecureString est utilisé, Read-Host renvoie une SecureString. Sinon, elle retourne une chaîne.
Notes
Cette applet de commande lit uniquement à partir du flux stdin du processus hôte. En règle générale, le flux stdin est connecté au clavier de la console hôte.