Read-Host
Read-Host [[-Prompt] <Object>] [-AsSecureString] [<CommonParameters>]
The Read-Host cmdlet reads a line of input from the console. You can use it to prompt a user for input. Because you can save the input as a secure string, you can use this cmdlet to prompt users for secure data, such as passwords, as well as shared data.
Parameters
-AsSecureString [<SwitchParameter>]
- Default value is False
- Accepts pipeline input False
Indicates that the cmdlet displays asterisks (*) in place of the characters that the user types as input.
When you use this parameter, the output of the Read-Host cmdlet is a SecureString object ( System.Security.SecureString ).
-Prompt <Object>
- Default value is None
- Accepts pipeline input False
Specifies the text of the prompt. Type a string. If the string includes spaces, enclose it in quotation marks. Windows PowerShell appends a colon (:) to the text that you enter.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,ErrorAction, ErrorVariable, WarningAction, WarningVariable,OutBuffer, PipelineVariable, and OutVariable.
Inputs
NoneOutputs
System.String or System.Security.SecureStringExamples
-
Save console input to a variable:
PS C:\> $Age = Read-Host "Please enter your age"
This command displays the string "Please enter your age:" as a prompt. When a value is entered and the Enter key is pressed, the value is stored in the $Age variable.
-
Save console input as a secure string:
PS C:\> $pwd_secure_string = Read-Host "Enter a Password" -AsSecureString
This command displays the string "Enter a Password:" as a prompt. As a value is being entered, asterisks (*) appear on the console in place of the input. When the Enter key is pressed, the value is stored as a SecureString object in the $pwd_secure_string variable.
Additional Notes
This work is licensed under a Creative Commons Attribution 4.0 International. It is attributed to Microsoft Corporation and can be found here.
PowerShell Commands