Read-Host
ist eine einfache Option zum Abrufen von Zeichenfolgen von einem Benutzer.
$name = Read-Host 'What is your username?'
So verstecken Sie Passwörter:
$pass = Read-Host 'What is your password?' -AsSecureString
So konvertieren Sie das Passwort in Klartext:
[Runtime.InteropServices.Marshal]::PtrToStringAuto(
[Runtime.InteropServices.Marshal]::SecureStringToBSTR($pass))
Wie für den Typen zurück durch $host.UI.Prompt()
, wenn Sie den Code auf dem Link gepostet in @ Christian Kommentar ausführen, können Sie den Rückgabetyp von Rohrleitungen , es herauszufinden Get-Member
(zum Beispiel $results | gm
). Das Ergebnis ist ein Wörterbuch, in dem der Schlüssel der Name eines FieldDescription
Objekts ist, das in der Eingabeaufforderung verwendet wird. Um auf das Ergebnis für die erste Eingabeaufforderung im verknüpften Beispiel zuzugreifen, geben Sie Folgendes ein : $results['String Field']
.
Lassen Sie die Klammern weg, um auf Informationen zuzugreifen, ohne eine Methode aufzurufen:
PS> $Host.UI.Prompt
MemberType : Method
OverloadDefinitions : {System.Collections.Generic.Dictionary[string,psobject] Pr
ompt(string caption, string message, System.Collections.Ob
jectModel.Collection[System.Management.Automation.Host.Fie
ldDescription] descriptions)}
TypeNameOfValue : System.Management.Automation.PSMethod
Value : System.Collections.Generic.Dictionary[string,psobject] Pro
mpt(string caption, string message, System.Collections.Obj
ectModel.Collection[System.Management.Automation.Host.Fiel
dDescription] descriptions)
Name : Prompt
IsInstance : True
$Host.UI.Prompt.OverloadDefinitions
gibt Ihnen die Definition (en) der Methode. Jede Definition wird als angezeigt <Return Type> <Method Name>(<Parameters>)
.