Dela via


Read-Host

Läser en rad med indata från konsolen.

Syntax

AsString (Standard)

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

AsSecureString

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

Description

Cmdleten Read-Host läser en rad med indata från konsolen (stdin). Du kan använda den för att fråga en användare om indata. Eftersom du kan spara indata som en säker sträng kan du använda den här cmdleten för att be användarna om säkra data, till exempel lösenord.

Anmärkning

Read-Host har en gräns på 1 022 tecken som kan accepteras som indata från en användare.

Exempel

Exempel 1: Spara konsolindata till en variabel

I det här exemplet visas strängen "Ange din ålder:" som en uppmaning. När ett värde anges och returnyckeln trycks in lagras värdet i variabeln $Age.

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

Exempel 2: Spara konsolindata som en säker sträng

I det här exemplet visas strängen "Ange ett lösenord:" som en uppmaning. När ett värde anges visas asterisker (*) i konsolen i stället för indata. När returnyckeln trycks in lagras värdet som ett SecureString- objekt i variabeln $pwd_secure_string.

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

Exempel 3: Maskera indata och som en klartextsträng

I det här exemplet visas strängen "Ange ett lösenord:" som en uppmaning. När ett värde anges visas asterisker (*) i konsolen i stället för indata. När returnyckeln trycks in lagras värdet som en oformaterad String-objekt i variabeln $pwd_string.

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

Parametrar

-AsSecureString

Anger att cmdleten visar asterisker (*) i stället för de tecken som användaren skriver som indata. När du använder den här parametern är utdata från cmdleten Read-Host ett SecureString- -objekt (System.Security.SecureString).

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

AsSecureString
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-MaskInput

Anger att cmdleten visar asterisker (*) i stället för de tecken som användaren skriver som indata. När du använder den här parametern är utdata från cmdleten Read-Host ett String-objekt. På så sätt kan du på ett säkert sätt fråga efter ett lösenord som returneras som klartext i stället för SecureString-.

Den här parametern lades till i PowerShell 7.1.

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

AsString
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-Prompt

Anger texten i prompten. Skriv en sträng. Om strängen innehåller blanksteg omger du den inom citattecken. PowerShell lägger till ett kolon (:) i texten som du anger.

Parameteregenskaper

Typ:Object
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:0
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

CommonParameters

Den här cmdleten stöder vanliga parametrar: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction och -WarningVariable. Mer information finns i about_CommonParameters.

Indata

None

Den här cmdleten accepterar inte indata från PowerShell-pipelinen.

Utdata

System.String or System.Security.SecureString

Om parametern AsSecureString används Read-Host returneras en SecureString. Annars returneras en sträng.

Kommentarer

Den här cmdleten läser bara från stdin-strömmen i värdprocessen. Vanligtvis är stdin-strömmen ansluten till tangentbordet i värdkonsolen.