Share via


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.