Freigeben über


Read-Host

Liest eine Zeile von Eingaben aus der Konsole.

Syntax

AsString (Standard)

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

AsSecureString

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

Beschreibung

Das cmdlet Read-Host liest eine Eingabezeile aus der Konsole (stdin). Sie können ihn verwenden, um einen Benutzer zur Eingabe aufzufordern. Da Sie die Eingabe als sichere Zeichenfolge speichern können, können Sie mit diesem Cmdlet Benutzer zur Eingabe sicherer Daten auffordern, z. B. Kennwörter.

Hinweis

Read-Host maximal 1022 Zeichen enthält, kann sie als Eingabe eines Benutzers akzeptieren.

Beispiele

Beispiel 1: Speichern von Konsoleneingaben in einer Variablen

In diesem Beispiel wird die Zeichenfolge "Bitte ihr Alter eingeben:" als Eingabeaufforderung angezeigt. Wenn ein Wert eingegeben wird und die EINGABETASTE gedrückt wird, wird der Wert in der variablen $Age gespeichert.

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

Beispiel 2: Speichern von Konsoleneingaben als sichere Zeichenfolge

In diesem Beispiel wird die Zeichenfolge "Kennwort eingeben:" als Eingabeaufforderung angezeigt. Wenn ein Wert eingegeben wird, werden Sternchen (*) anstelle der Eingabe auf der Konsole angezeigt. Wenn die EINGABETASTE gedrückt wird, wird der Wert als SecureString-Objekt in der variablen $pwd_secure_string gespeichert.

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

Beispiel 3: Maskieren von Eingaben und als Nur-Text-Zeichenfolge

In diesem Beispiel wird die Zeichenfolge "Kennwort eingeben:" als Eingabeaufforderung angezeigt. Wenn ein Wert eingegeben wird, werden Sternchen (*) anstelle der Eingabe auf der Konsole angezeigt. Wenn die EINGABETASTE gedrückt wird, wird der Wert als Nur-Text-String--Objekt in der variablen $pwd_string gespeichert.

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

Parameter

-AsSecureString

Gibt an, dass das Cmdlet Sternchen (*) anstelle der Zeichen anzeigt, die der Benutzer als Eingabe eingibt. Wenn Sie diesen Parameter verwenden, ist die Ausgabe des cmdlets Read-Host ein SecureString- -Objekt (System.Security.SecureString).

Parametereigenschaften

Typ:SwitchParameter
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

AsSecureString
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-MaskInput

Gibt an, dass das Cmdlet Sternchen (*) anstelle der Zeichen anzeigt, die der Benutzer als Eingabe eingibt. Wenn Sie diesen Parameter verwenden, ist die Ausgabe des cmdlets Read-Host ein String-Objekt. Auf diese Weise können Sie sicher ein Kennwort anfordern, das als Nur-Text zurückgegeben wird, anstatt SecureString-.

Dieser Parameter wurde in PowerShell 7.1 hinzugefügt.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

AsString
Position:Named
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-Prompt

Gibt den Text der Eingabeaufforderung an. Geben Sie eine Zeichenfolge ein. Wenn die Zeichenfolge Leerzeichen enthält, schließen Sie sie in Anführungszeichen ein. PowerShell fügt einen Doppelpunkt (:) an den von Ihnen eingegebenen Text an.

Parametereigenschaften

Typ:Object
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:0
Obligatorisch:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

CommonParameters

Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.

Eingaben

None

Dieses Cmdlet akzeptiert keine Eingaben von der PowerShell-Pipeline.

Ausgaben

System.String or System.Security.SecureString

Wenn der Parameter AsSecureString verwendet wird, Read-Host wird ein SecureString zurückgegeben. Andernfalls wird eine Zeichenfolge zurückgegeben.

Hinweise

Dieses Cmdlet liest nur aus dem Stdin-Datenstrom des Hostprozesses. Normalerweise ist der Stdin-Datenstrom mit der Tastatur der Hostkonsole verbunden.