Partager via


Read-Host

Lit une ligne d'entrée de la console.

Syntax

Read-Host
    [[-Prompt] <Object>]
    [-MaskInput]
    [<CommonParameters>]
Read-Host
    [[-Prompt] <Object>]
    [-AsSecureString]
    [<CommonParameters>]

Description

L’applet Read-Host de commande lit une ligne d’entrée à partir de la console (stdin). Vous pouvez l'utiliser pour inviter un utilisateur à saisir une entrée. Étant donné que vous pouvez enregistrer l’entrée en tant que chaîne sécurisée, vous pouvez utiliser cette applet de commande pour inviter les utilisateurs à fournir des données sécurisées, telles que des mots de passe.

Notes

Read-Host a une limite de 1 022 caractères qu’il peut accepter comme entrée d’un utilisateur.

Exemples

Exemple 1 : Enregistrer une entrée de console dans une variable

Cet exemple montre comment afficher la chaîne « Veuillez entrer votre âge : » en tant qu’invite. Lorsqu’une valeur est entrée et que la touche Entrée est enfoncée, la valeur est stockée dans la $Age variable.

$Age = Read-Host "Please enter your age"

Exemple 2 : Enregistrer l’entrée de console en tant que chaîne sécurisée

Cet exemple montre comment afficher la chaîne « Entrer un mot de passe : » en tant qu’invite. Au fur et à mesure qu’une valeur est entrée, les astérisque (*) s’affichent 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 $pwd_secure_string variable.

$pwd_secure_string = Read-Host "Enter a Password" -AsSecureString

Exemple 3 : Entrée de masque et sous forme de chaîne en texte clair

Cet exemple montre comment afficher la chaîne « Entrer un mot de passe : » en tant qu’invite. Au fur et à mesure qu’une valeur est entrée, les astérisque (*) s’affichent sur la console à la place de l’entrée. Lorsque la touche Entrée est enfoncée, la valeur est stockée sous la forme d’un objet String en texte clair dans la $pwd_string variable.

$pwd_string = Read-Host "Enter a Password" -MaskInput

Paramètres

-AsSecureString

Indique que l’applet de commande affiche des astérisque (*) à la place des caractères que l’utilisateur tape comme entrée. Lorsque vous utilisez ce paramètre, la sortie de l’applet Read-Host de commande est un objet SecureString (System.Security.SecureString).

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MaskInput

Indique que l’applet de commande affiche des astérisque (*) à la place des caractères que l’utilisateur tape comme entrée. Lorsque vous utilisez ce paramètre, la sortie de l’applet Read-Host de commande est un objet String . Cela vous permet d’inviter en toute sécurité un mot de passe retourné en texte clair au lieu de SecureString.

Ce paramètre a été ajouté dans PowerShell 7.1.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Prompt

Spécifie le texte de l'invite. Tapez une chaîne. Si la chaîne inclut des espaces, mettez-la entre guillemets. PowerShell ajoute un signe deux-points (:) au texte que vous entrez.

Type:Object
Position:0
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entrées

None

Cette applet de commande n’accepte pas d’entrée du pipeline PowerShell.

Sorties

System.String or System.Security.SecureString

Si le paramètre AsSecureString est utilisé, Read-Host retourne un SecureString. Sinon, une chaîne est retournée.

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.