Freigeben über


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. Mit diesem Cmdlet können auch Funktionen der Benutzeroberfläche des Hostprogramms angepasst werden, wie z. B. die Farben für Text und Hintergrund.

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)

Mit diesem Befehl wird die Größe des Windows PowerShell-Fensters auf 10 Zeilen um 10 Zeichen geändert.

Beispiel 3: Abrufen der PowerShell-Version für den Host

(Get-Host).Version

Major  Minor  Build  Revision PSSemVerPreReleaseLabel    PSSemVerBuildLabel
-----  -----  -----  -------- -----------------------    ------------------
7      4      0      -1       preview.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 enthält Get-Host 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 Parameter Property mit einem Wert aller (*) zum Anzeigen aller Eigenschaften und Eigenschaftswerte des Versionsobjekts.

Beispiel 4: Abrufen der aktuellen Kultur für den Host

(Get-Host).CurrentCulture | Format-List

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 - en-US
TextInfo                       : TextInfo - en-US
IsNeutralCulture               : False
CultureTypes                   : SpecificCultures, InstalledWin32Cultures
NumberFormat                   : System.Globalization.NumberFormatInfo
DateTimeFormat                 : System.Globalization.DateTimeFormatInfo
Calendar                       : System.Globalization.GregorianCalendar
OptionalCalendars              : {System.Globalization.GregorianCalendar}
UseUserOverride                : True
IsReadOnly                     : True

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.

Entsprechend 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 Parameter Property mit einem Wert aller (*) zum Anzeigen aller Eigenschaften und Eigenschaftswerte des CultureInfo-Objekts .

Beispiel 5: Abrufen des DateTimeFormat für die aktuelle Kultur

(Get-Host).CurrentCulture.DateTimeFormat | Format-List

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 viele nützliche Eigenschaften aufweist. Darunter enthält die DateTimeFormat-Eigenschaft ein DateTimeFormatInfo -Objekt mit vielen nützlichen Eigenschaften.

Verwenden Sie das Get-Member Cmdlet, um den Typ eines Objekts zu finden, das in einer Objekteigenschaft gespeichert ist. Verwenden Sie das Format-List Cmdlet, um die Eigenschaftswerte des Objekts anzuzeigen.

Beispiel 6: Abrufen der RawUI-Eigenschaft für den Host

Mit diesem Befehl werden die Eigenschaften der RawUI-Eigenschaft des Hostobjekts angezeigt. Durch das Ändern dieser Werte können Sie die Darstellung des Hostprogramms ändern.

(Get-Host).UI.RawUI

ForegroundColor       : Gray
BackgroundColor       : Black
CursorPosition        : 0,28
WindowPosition        : 0,0
CursorSize            : 25
BufferSize            : 120,29
WindowSize            : 120,29
MaxWindowSize         : 120,29
MaxPhysicalWindowSize : 1904,69
KeyAvailable          : True
WindowTitle           : PowerShell 7.3.3

Hinweis

Auf Nicht-Windows-Plattformen wird "ForegroundColor" und "BackgroundColor" standardmäßig -1 verwendet, da es keine konsistente Möglichkeit gibt, diese auf Nicht-Windows-Plattformen abzurufen.

Eingaben

None

Sie können keine Objekte an dieses Cmdlet weiterleiten.

Ausgaben

System.Management.Automation.Internal.Host.InternalHost

Dieses Cmdlet gibt ein InternalHost-Objekt zurück.

Hinweise

Die $Host automatische Variable enthält dasselbe Objekt, das Get-Host zurückgegeben wird, und Sie können sie auf die gleiche Weise verwenden. Ebenso enthalten die $PSCulture und $PSUICulture die automatischen Variablen dieselben Objekte wie die CurrentCulture- und CurrentUICulture-Eigenschaften des Hostobjekts. Diese Funktionen sind austauschbar.

Hinweis

Die Farbeinstellungen $Host.PrivateData in wurden durch die $PSStyle Einstellungsvariable ersetzt. Weitere Informationen finden Sie unter about_ANSI_Terminals.

Weitere Informationen finden Sie unter about_Automatic_Variables.