Get-Host
Ruft ein Objekt ab, das das aktuelle Hostprogramm darstellt.
Syntax
Get-Host []
Beschreibung
Das Get-Host
Cmdlet ruft ein -Objekt ab, das das Programm darstellt, das Windows PowerShell hostet.
Die Standardanzeige umfasst die Windows PowerShell-Versionsnummer und die aktuellen Regions- und Spracheinstellungen des Hosts. Das Hostobjekt enthält jedoch zahlreiche Informationen, darunter detaillierte Angaben zur ausgeführten Windows PowerShell-Version und der aktuellen Kultur und Benutzeroberflächenkultur von Windows PowerShell. Sie können dieses Cmdlet auch verwenden, um Features der Benutzeroberfläche des Hostprogramms anzupassen, z. B. die Text- und Hintergrundfarben.
Beispiele
Beispiel 1: Abrufen von Informationen zum PowerShell-Konsolenhost
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
Dieser Befehl zeigt Informationen zur PowerShell-Konsole an, bei der es sich um das aktuelle Hostprogramm für PowerShell in diesem Beispiel handelt. Sie enthält den Namen des Hosts, die Version von PowerShell, die auf dem Host ausgeführt wird, sowie die aktuelle Kultur und Benutzeroberflächenkultur.
Die Eigenschaften Version, UI, CurrentCulture, CurrentUICulture, PrivateData und Runspace enthalten jeweils ein Objekt mit anderen nützlichen Eigenschaften. In späteren Beispielen werden diese Eigenschaften erläutert.
Beispiel 2: Ändern der Größe des PowerShell-Fensters
$H = Get-Host
$Win = $H.UI.RawUI.WindowSize
$Win.Height = 10
$Win.Width = 10
$H.UI.RawUI.Set_WindowSize($Win)
Dieser Befehl ändert die Größe des Windows PowerShell Fensters in 10 Zeilen mal 10 Zeichen.
Beispiel 3: Abrufen der PowerShell-Version für den Host
(Get-Host).Version | Format-List -Property *
Major : 2
Minor : 0
Build : -1
Revision : -1
MajorRevision : -1
MinorRevision : -1
Dieser Befehl ruft detaillierte Informationen über die Version von Windows PowerShell ab, 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 Format-List
Cmdlet zu senden. Der Format-List
Befehl verwendet den Property-Parameter mit dem Wert all (*
), um alle Eigenschaften und Eigenschaftswerte des Versionsobjekts anzuzeigen.
Beispiel 4: Abrufen der aktuellen Kultur für den Host
(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 die aktuelle Kultur der auf dem Host ausgeführten Windows PowerShell-Version ab. Dies sind die gleichen Informationen, die Get-Culture
vom Cmdlet zurückgegeben werden.
Auf ähnliche Weise gibt die CurrentUICulture-Eigenschaft dasselbe Objekt zurück, das Get-UICulture
zurückgegeben wird.
Die CurrentCulture-Eigenschaft des Hostobjekts enthält ein System.Globalization.CultureInfo-Objekt . Dieser Befehl verwendet einen Pipelineoperator (|
), um das CultureInfo-Objekt an das Format-List
Cmdlet zu senden. Der Format-List
Befehl 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
(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 zu 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 über viele nützliche Eigenschaften verfügt. Unter ihnen enthält die DateTimeFormat-Eigenschaft ein DateTimeFormatInfo-Objekt mit vielen nützlichen Eigenschaften.
Verwenden Sie das Cmdlet, um den Typ eines Objekts zu ermitteln, das Get-Member
in einer Objekteigenschaft gespeichert ist. Verwenden Sie Format-List
das Cmdlet, um die Eigenschaftswerte des Objekts anzuzeigen.
Beispiel 6: Abrufen der RawUI-Eigenschaft für den Host
(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)
Dieser Befehl zeigt die Eigenschaften der RawUI-Eigenschaft des Hostobjekts an. Durch das Ändern dieser Werte können Sie die Darstellung des Hostprogramms ändern.
Beispiel 7: Festlegen der Hintergrundfarbe für die PowerShell-Konsole
(Get-Host).UI.RawUI.BackgroundColor = "Black"
cls
Diese Befehle ändern die Hintergrundfarbe der Windows PowerShell-Konsole in Schwarz. Der cls-Befehl ist ein Alias für die Clear-Host
Funktion, der den Bildschirm löscht und den gesamten Bildschirm in die neue Farbe ändert.
Diese Änderung gilt nur in der aktuellen Sitzung. Um die Hintergrundfarbe der Konsole für alle Sitzungen zu ändern, fügen Sie den Befehl ihrem PowerShell-Profil hinzu.
Beispiel 8: Festlegen der Hintergrundfarbe für Fehlermeldungen
$Host.PrivateData.ErrorBackgroundColor = "white"
Dieser Befehl ändert die Hintergrundfarbe von Fehlermeldungen in Weiß.
Dieser Befehl verwendet die $Host
automatische Variable, die das Hostobjekt für das aktuelle Hostprogramm enthält. Get-Host
gibt dasselbe Objekt zurück, das $Host
enthält, sodass Sie sie austauschbar verwenden können.
Dieser Befehl verwendet die PrivateData-Eigenschaft von $Host
als ErrorBackgroundColor-Eigenschaft. So zeigen Sie alle Eigenschaften des -Objekts im an $Host
. PrivateData-Eigenschaft, geben Sie ein $host.PrivateData | format-list *
.
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 dasselbe Objekt, das Get-Host
zurückgegeben wird, und Sie können es auf die gleiche Weise verwenden. Ebenso enthalten die $PSCulture
automatischen Variablen und $PSUICulture
die automatischen Variablen dieselben Objekte, die die Eigenschaften CurrentCulture und CurrentUICulture des Hostobjekts enthalten. Diese Funktionen sind austauschbar.
Weitere Informationen finden Sie unter about_Automatic_Variables.