Поделиться через


Get-Host

Возвращает объект, представляющий текущую программу узла.

Синтаксис

Default (По умолчанию)

Get-Host

Описание

Командлет Get-Host получает объект, представляющий программу, в которой размещается Windows PowerShell.

Отображение по умолчанию включает номер версии Windows PowerShell и текущий регион и языковые параметры, используемые узлом, но объект узла содержит множество сведений, включая подробные сведения о версии Windows PowerShell, которая в настоящее время работает, а также о текущем языке и региональных параметрах и региональных параметрах пользовательского интерфейса Windows PowerShell. Этот командлет также можно использовать для настройки функций пользовательского интерфейса программы узла, таких как цвет текста и фона.

Примеры

Пример 1. Получение сведений о узле консоли 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

Эта команда отображает сведения о консоли PowerShell, которая является текущей программой узла для PowerShell в этом примере. Он включает имя узла, версию PowerShell, которая выполняется в узле, а также текущий язык и региональные параметры и региональные параметры пользовательского интерфейса.

версии, пользовательского интерфейса, CurrentCulture, CurrentUICulture, PrivateDataи свойства Runspace содержат объект с другими полезными свойствами. В последующих примерах рассматриваются эти свойства.

Пример 2. Изменение размера окна PowerShell

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

Эта команда изменяет размер окна Windows PowerShell до 10 строк на 10 символов.

Пример 3. Получение версии PowerShell для узла

(Get-Host).Version
Major  Minor  Build  Revision
-----  -----  -----  --------
5      1      22621  963

Эта команда получает подробные сведения о версии Windows PowerShell, работающей на узле. Эти значения можно просмотреть, но не изменить.

Свойство версииGet-Host содержит объект System.Version. Эта команда использует оператор конвейера (|) для отправки объекта версии в командлет Format-List. Команда Format-List использует параметр свойства со значением всех (*) для отображения всех свойств и значений свойств объекта версии.

Пример 4. Получение текущего языка и региональных параметров для узла

(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

Эта команда получает подробные сведения о текущем наборе региональных параметров для Windows PowerShell, работающем на узле. Это те же сведения, которые возвращаются командлетом Get-Culture.

Аналогичным образом свойство CurrentUICulture возвращает тот же объект, который Get-UICulture возвращается.

Свойство CurrentCulture объекта узла содержит объект System.Globalization.CultureInfo. Эта команда использует оператор конвейера (|) для отправки объекта CultureInfo в командлет Format-List. Команда Format-List использует параметр свойства со значением всех (*) для отображения всех свойств и значений свойств объекта CultureInfo.

Пример 5. Получение DateTimeFormat для текущего языка и региональных параметров

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

Эта команда возвращает подробные сведения о DateTimeFormat текущего языка и региональных параметров, используемых для Windows PowerShell.

Свойство CurrentCulture объекта узла содержит объект CultureInfo, который, в свою очередь, имеет множество полезных свойств. Среди них свойство DateTimeFormat содержит объект DateTimeFormatInfo со многими полезными свойствами.

Чтобы найти тип объекта, хранящегося в свойстве объекта, используйте командлет Get-Member. Чтобы отобразить значения свойств объекта, используйте командлет Format-List.

Пример 6. Получение свойства RawUI для узла

Эта команда отображает свойства свойства RawUI объекта узла. Изменив эти значения, вы можете изменить внешний вид хост-программы.

(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

Пример 7. Настройка цвета фона для консоли PowerShell

Эти команды изменяют цвет фона консоли Windows PowerShell на черный. Команда Clear-Host очищает экран, чтобы сбросить окно консоли на новый цвет.

(Get-Host).UI.RawUI.BackgroundColor = "Black"
Clear-Host

Это изменение действует только в текущем сеансе. Чтобы изменить цвет фона консоли для всех сеансов, добавьте команду в профиль PowerShell.

Пример 8. Настройка цвета фона для сообщений об ошибках

$Host.PrivateData.ErrorBackgroundColor = "white"

Эта команда изменяет цвет фона сообщений об ошибках на белый.

Эта команда использует $Host автоматическую переменную, содержащую объект узла для текущей программы узла. Get-Host возвращает тот же объект, который $Host содержит, поэтому их можно использовать взаимозаменяемо.

Эта команда использует свойство PrivateData$Host в качестве свойства ErrorBackgroundColor. Чтобы просмотреть все свойства объекта в $Host. Свойство PrivateData, тип $Host.PrivateData | Format-List *.

Входные данные

None

Невозможно передать объекты в этот командлет.

Выходные данные

System.Management.Automation.Internal.Host.InternalHost

Этот командлет возвращает объект InternalHost.

Примечания

$Host автоматическая переменная содержит тот же объект, который Get-Host возвращается, и его можно использовать таким же образом. Аналогичным образом, $PSCulture и $PSUICulture автоматические переменные содержат те же объекты, которые содержат свойства CurrentCulture и CurrentUICulture объекта узла. Эти функции можно использовать взаимозаменяемо.

Дополнительные сведения см. в разделе about_Automatic_Variables.