Get-Host
Ruft ein Objekt ab, das das aktuelle Hostprogramm darstellt.
Syntax
Default (Standard)
Get-Host
Beschreibung
Das Cmdlet Get-Host ruft ein Objekt ab, das das Programm darstellt, das Windows PowerShell hostet.
Die Standardanzeige enthält die Windows PowerShell-Versionsnummer und die aktuellen Regions- und Spracheinstellungen, die der Host verwendet, aber das Hostobjekt enthält eine Fülle von Informationen, einschließlich detaillierter Informationen zur Version von Windows PowerShell, die derzeit ausgeführt wird, sowie die aktuelle Kultur- und Benutzeroberflächenkultur von Windows PowerShell. Sie können dieses Cmdlet auch verwenden, um Features der Hostprogramm-Benutzeroberfläche anzupassen, z. B. die Text- und Hintergrundfarben.
Beispiele
Beispiel 1: Abrufen von Informationen zum PowerShell-Konsolenhost
PS C:\> Get-Host
Name : ConsoleHost
Version : 2.0
InstanceId : e4e0ab54-cc5e-4261-9117-4081f20ce7a2
UI : System.Management.Automation.Internal.Host.InternalHostUserInterface
CurrentCulture : en-US
CurrentUICulture : en-US
PrivateData : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy
IsRunspacePushed : False
Runspace : System.Management.Automation.Runspaces.LocalRunspace
Mit diesem Befehl werden Informationen zur Windows PowerShell-Konsole angezeigt, bei der es sich in diesem Beispiel um das aktuelle Hostprogramm für Windows PowerShell handelt. Sie enthält den Namen des Hosts, die Version von Windows PowerShell, die auf dem Host ausgeführt wird, sowie die aktuelle Kultur und die Kultur der Benutzeroberfläche.
Die Eigenschaften Version, UI, CurrentCulture, CurrentUICulture, PrivateData und Runspace enthalten jeweils ein Objekt mit sehr nützlichen Eigenschaften. In späteren Beispielen werden diese Eigenschaften untersucht.
Beispiel 2: Ändern der Größe des PowerShell-Fensters
PS C:\> $H = Get-Host
PS C:\> $Win = $H.UI.RawUI.WindowSize
PS C:\> $Win.Height = 10
PS C:\> $Win.Width = 10
PS C:\> $H.UI.RawUI.Set_WindowSize($Win)
Mit diesem Befehl wird die Größe des Windows PowerShell-Fensters auf 10 x 10 Pixel geändert.
Beispiel 3: Abrufen der PowerShell-Version für den Host
PS C:\> (Get-Host).Version | Format-List -Property *
Major : 2
Minor : 0
Build : -1
Revision : -1
MajorRevision : -1
MinorRevision : -1
Dieser Befehl erhält detaillierte Informationen zur Version von Windows PowerShell, die auf dem Host ausgeführt wird. Sie können diese Werte anzeigen, aber nicht ändern.
Die Version-Eigenschaft von Get-Host enthält ein System.Version-Objekt . Dieser Befehl verwendet einen Pipelineoperator (|), um das Versionsobjekt an das Cmdlet Format-List zu senden. Der Befehl Format-List verwendet den Parameter Property mit dem Wert all (*), um alle Eigenschaften und Eigenschaftswerte des Versionsobjekts anzuzeigen.
Beispiel 4: Abrufen der aktuellen Kultur für den Host
PS C:\> (Get-Host).CurrentCulture | Format-List -Property *
Parent : en
LCID : 1033
KeyboardLayoutId : 1033
Name : en-US
IetfLanguageTag : en-US
DisplayName : English (United States)
NativeName : English (United States)
EnglishName : English (United States)
TwoLetterISOLanguageName : en
ThreeLetterISOLanguageName : eng
ThreeLetterWindowsLanguageName : ENU
CompareInfo : CompareInfo - 1033
TextInfo : TextInfo - 1033
IsNeutralCulture : False
CultureTypes : SpecificCultures, InstalledWin32Cultures, FrameworkCultures
NumberFormat : System.Globalization.NumberFormatInfo
DateTimeFormat : System.Globalization.DateTimeFormatInfo
Calendar : System.Globalization.GregorianCalendar
OptionalCalendars : {System.Globalization.GregorianCalendar, System.Globalization.GregorianCalendar}
UseUserOverride : True
IsReadOnly : False
Dieser Befehl ruft detaillierte Informationen über den aktuellen Kultursatz für Windows PowerShell ab, der auf dem Host ausgeführt wird. Dies sind die gleichen Informationen, die vom Cmdlet Get-Culture zurückgegeben werden.
Auf ähnliche Weise gibt die CurrentUICulture-Eigenschaft das gleiche Objekt zurück, das Get-UICulture zurückgibt.
Die CurrentCulture-Eigenschaft des Hostobjekts enthält ein System.Globalization.CultureInfo-Objekt. Dieser Befehl verwendet einen Pipelineoperator (|), um das CultureInfo-Objekt an das Cmdlet Format-List zu senden. Der Befehl Format-List verwendet den Property-Parameter mit dem Wert all (*), um alle Eigenschaften und Eigenschaftswerte des CultureInfo-Objekts anzuzeigen.
Beispiel 5: Abrufen des DateTimeFormat für die aktuelle Kultur
PS C:\> (Get-Host).CurrentCulture.DateTimeFormat | Format-List -Property *
AMDesignator : AM
Calendar : System.Globalization.GregorianCalendar
DateSeparator : /
FirstDayOfWeek : Sunday
CalendarWeekRule : FirstDay
FullDateTimePattern : dddd, MMMM dd, yyyy h:mm:ss tt
LongDatePattern : dddd, MMMM dd, yyyy
LongTimePattern : h:mm:ss tt
MonthDayPattern : MMMM dd
PMDesignator : PM
RFC1123Pattern : ddd, dd MMM yyyy HH':'mm':'ss 'GMT'
ShortDatePattern : M/d/yyyy
ShortTimePattern : h:mm tt
SortableDateTimePattern : yyyy'-'MM'-'dd'T'HH':'mm':'ss
TimeSeparator : :
UniversalSortableDateTimePattern : yyyy'-'MM'-'dd HH':'mm':'ss'Z'
YearMonthPattern : MMMM, yyyy
AbbreviatedDayNames : {Sun, Mon, Tue, Wed...}
ShortestDayNames : {Su, Mo, Tu, We...}
DayNames : {Sunday, Monday, Tuesday, Wednesday...}
AbbreviatedMonthNames : {Jan, Feb, Mar, Apr...}
MonthNames : {January, February, March, April...}
IsReadOnly : False
NativeCalendarName : Gregorian Calendar
AbbreviatedMonthGenitiveNames : {Jan, Feb, Mar, Apr...}
MonthGenitiveNames : {January, February, March, April...}
Dieser Befehl gibt detaillierte Informationen zum DateTimeFormat der aktuellen Kultur zurück, die für Windows PowerShell verwendet wird.
Die CurrentCulture-Eigenschaft des Hostobjekts enthält ein CultureInfo--Objekt, das wiederum viele nützliche Eigenschaften aufweist. Darunter enthält die DateTimeFormat-Eigenschaft ein DateTimeFormatInfo--Objekt mit vielen nützlichen Eigenschaften.
Um den Typ eines Objekts zu ermitteln, das in einer Objekteigenschaft gespeichert ist, verwenden Sie das Cmdlet Get-Member. Um die Eigenschaftswerte des Objekts anzuzeigen, verwenden Sie das Cmdlet Format-List.
Beispiel 6: Abrufen der RawUI-Eigenschaft für den Host
PS C:\> (Get-Host).UI.RawUI | Format-List -Property *
ForegroundColor : DarkYellow
BackgroundColor : DarkBlue
CursorPosition : 0,390
WindowPosition : 0,341
CursorSize : 25
BufferSize : 120,3000
WindowSize : 120,50
MaxWindowSize : 120,81
MaxPhysicalWindowSize : 182,81
KeyAvailable : False
WindowTitle : Windows PowerShell 2.0 (04/11/2008 00:08:14)
Mit diesem Befehl werden die Eigenschaften der RawUI--Eigenschaft des Hostobjekts angezeigt. Durch Ändern dieser Werte können Sie die Darstellung des Hostprogramms ändern.
Beispiel 7: Festlegen der Hintergrundfarbe für die PowerShell-Konsole
PS C:\> (Get-Host).UI.RawUI.BackgroundColor = "Black"
PS C:\> cls
Mit diesen Befehlen wird die Hintergrundfarbe der Windows PowerShell-Konsole in Schwarz geändert. Der Befehl cls ist ein Alias für die Funktion Clear-Host, die den Bildschirm löscht und den gesamten Bildschirm in die neue Farbe ändert.
Diese Änderung ist nur in der aktuellen Sitzung wirksam. Wenn Sie die Hintergrundfarbe der Konsole für alle Sitzungen ändern möchten, fügen Sie den Befehl Ihrem Windows PowerShell-Profil hinzu.
Beispiel 8: Festlegen der Hintergrundfarbe für Fehlermeldungen
PS C:\> $Host.PrivateData.ErrorBackgroundColor = "white"
Mit diesem Befehl wird die Hintergrundfarbe von Fehlermeldungen in Weiß geändert.
Dieser Befehl verwendet die $Host automatische Variable, die das Host-Objekt für das aktuelle Host-Programm enthält. Get-Host gibt das gleiche Objekt zurück, das $Host enthält, sodass Sie sie austauschbar verwenden können.
In diesem Befehl wird die PrivateData-Eigenschaft von $Host als ErrorBackgroundColor-Eigenschaft verwendet.
Um alle Eigenschaften des Objekts in der $Host.PrivateData-Eigenschaft anzuzeigen, geben Sie $host.privatedata | format-list *ein.
Eingaben
None
Eingaben können nicht an dieses Cmdlet weitergereicht werden.
Ausgaben
System.Management.Automation.Internal.Host.InternalHost
Get-Host gibt ein System.Management.Automation.Internal.Host.InternalHost-Objekt zurück.
Hinweise
Die $Host automatische Variable enthält das gleiche Objekt, das Get-Host zurückgibt, und Sie können es auf die gleiche Weise verwenden. Entsprechend enthalten die Variablen $PSCulture und $PSUICulture automatisch die gleichen Objekte wie die CurrentCulture-Eigenschaft und die CurrentUICulture-Eigenschaft des Hostobjekts. Sie können diese Features austauschbar verwenden.
Weitere Informationen finden Sie unter about_Automatic_Variables.