Freigeben über


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.