Get-Host

Pobiera obiekt reprezentujący bieżący program hosta.

Składnia

Get-Host []

Opis

Polecenie Get-Host cmdlet pobiera obiekt reprezentujący program hostujący program Windows PowerShell.

Domyślny ekran zawiera numer wersji programu Windows PowerShell oraz bieżące ustawienia regionalne i językowe używane przez hosta, ale obiekt hosta zawiera wiele informacji, w tym szczegółowe informacje o wersji programu Windows PowerShell, która jest aktualnie uruchomiona, oraz bieżącą kulturę i kulturę interfejsu użytkownika programu Windows PowerShell. Możesz również użyć tego polecenia cmdlet, aby dostosować funkcje interfejsu użytkownika programu hosta, takie jak tekst i kolory tła.

Przykłady

Przykład 1. Uzyskiwanie informacji o hoście konsoli programu PowerShell

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

To polecenie wyświetla informacje o konsoli programu PowerShell, która jest bieżącym programem hosta dla programu PowerShell w tym przykładzie. Zawiera on nazwę hosta, wersję programu PowerShell uruchomioną na hoście oraz bieżącą kulturę i kulturę interfejsu użytkownika.

Właściwości Version, UI, CurrentCulture, CurrentUICulture, PrivateData i Runspace zawierają obiekt z innymi przydatnymi właściwościami. W kolejnych przykładach przeanalizować te właściwości.

Przykład 2. Zmienianie rozmiaru okna programu PowerShell

$H = Get-Host
$Win = $H.UI.RawUI.WindowSize
$Win.Height = 10
$Win.Width  = 10
$H.UI.RawUI.Set_WindowSize($Win)

To polecenie zmienia rozmiar okna programu Windows PowerShell na 10 wierszy o 10 znaków.

Przykład 3. Pobieranie wersji programu PowerShell dla hosta

(Get-Host).Version

Major  Minor  Build  Revision
-----  -----  -----  --------
7      2      10     -1

To polecenie pobiera szczegółowe informacje o wersji programu Windows PowerShell uruchomionego na hoście. Te wartości można wyświetlać, ale nie zmieniać.

Właściwość Version obiektu Get-Host zawiera obiekt System.Version . To polecenie używa operatora potoku (|), aby wysłać obiekt wersji do Format-List polecenia cmdlet. Polecenie Format-List używa parametru Property z wartością wszystkich (*), aby wyświetlić wszystkie właściwości i wartości właściwości obiektu wersji.

Przykład 4. Pobieranie bieżącej kultury hosta

(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

To polecenie pobiera szczegółowe informacje o bieżącym zestawie kultury dla programu Windows PowerShell uruchomionego na hoście. Są to te same informacje, które są zwracane przez Get-Culture polecenie cmdlet.

Podobnie właściwość CurrentUICulture zwraca ten sam obiekt, który Get-UICulture zwraca.

Właściwość CurrentCulture obiektu hosta zawiera obiekt System.Globalization.CultureInfo . To polecenie używa operatora potoku (|) do wysłania obiektu CultureInfo do Format-List polecenia cmdlet. Polecenie Format-List używa parametru Property z wartością wszystkich (*), aby wyświetlić wszystkie właściwości i wartości właściwości obiektu CultureInfo .

Przykład 5. Pobieranie wartości DateTimeFormat dla bieżącej kultury

(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...}

To polecenie zwraca szczegółowe informacje o formacie DateTimeFormat bieżącej kultury używanej dla programu Windows PowerShell.

Właściwość CurrentCulture obiektu hosta zawiera obiekt CultureInfo , który z kolei ma wiele przydatnych właściwości. Wśród nich właściwość DateTimeFormat zawiera obiekt DateTimeFormatInfo z wieloma przydatnymi właściwościami.

Aby znaleźć typ obiektu przechowywanego we właściwości obiektu, użyj Get-Member polecenia cmdlet . Aby wyświetlić wartości właściwości obiektu, użyj Format-List polecenia cmdlet .

Przykład 6. Pobieranie właściwości RawUI dla hosta

To polecenie wyświetla właściwości właściwości RawUI obiektu hosta. Zmieniając te wartości, można zmienić wygląd programu hosta.

(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

Uwaga

Na platformach innych niż Windows ustawienie domyślne ForegroundColor i BackgroundColor nie jest zgodne z tym, że nie ma spójnego sposobu na pobieranie ich na platformach innych niż -1 Windows.

Dane wejściowe

None

Nie można potokować obiektów do tego polecenia cmdlet.

Dane wyjściowe

System.Management.Automation.Internal.Host.InternalHost

To polecenie cmdlet zwraca obiekt InternalHost .

Uwagi

Zmienna automatyczna $Host zawiera ten sam obiekt, który Get-Host zwraca i można go użyć w taki sam sposób. $PSCulture Podobnie zmienne i $PSUICulture automatyczne zawierają te same obiekty, które zawierają właściwości CurrentCulture i CurrentUICulture obiektu hosta. Tych funkcji można używać zamiennie.

Uwaga

Ustawienia kolorów w pliku $Host.PrivateData zostały zastąpione przez zmienną $PSStyle preferencji. Aby uzyskać więcej informacji, zobacz about_ANSI_Terminals.

Aby uzyskać więcej informacji, zobacz about_Automatic_Variables.