Get-Host
Получает объект, представляющий текущую основную программу. Отображает также версию Windows PowerShell и региональные сведения по умолчанию.
Синтаксис
Get-Host [<CommonParameters>]
Описание
Командлет Get-Host получает объект, представляющий программу, для которой запущена оболочка Windows PowerShell.
По умолчанию отображается номер версии Windows PowerShell, а также текущие языковые и региональные параметры основной программы. Однако объект основной программы содержит и другую информацию, включая подробные сведения о версии запущенной оболочки Windows PowerShell, текущей культуре и культуре пользовательского интерфейса Windows PowerShell. Кроме того, с помощью этого командлета можно настроить пользовательский интерфейс основной программы, например цвета текста и фона.
Параметры
<CommonParameters>
Данный командлет поддерживает общие параметры -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer и -OutVariable. Дополнительные сведения см. в разделе about_Commonparameters.
Ввод и вывод
Входным типом является тип объектов, которые можно передавать командлету по конвейеру. Возвращаемым типом является тип объектов, возвращаемых командлетом.
Входные данные |
None Передать входные данные этому командлету по конвейеру невозможно. |
Выходные данные |
System.Management.Automation.Internal.Host.InternalHost Командлет Get-Host возвращает объект System.Management.Automation.Internal.Host.InternalHost. |
Примечания
Автоматическая переменная $host содержит тот же объект, который возвращает командлет Get-Host, поэтому ее можно использовать так же, как и данный командлет. Аналогично автоматические переменные $PSCulture и $PSUICulture содержат те же объекты, что и свойства CurrentCulture и CurrentUICulture объекта основной программы. Эти элементы можно использовать на равных основаниях.
Дополнительные сведения см. в разделе about_Automatic_Variables.
Пример 1
C:\PS>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
Описание
-----------
Эта команда отображает сведения о консоли Windows PowerShell, которая является основной программой для сеанса Windows PowerShell в этом примере. Они включают имя основной программы, запущенную версию Windows PowerShell, а также текущую культуру и культуру пользовательского интерфейса.
Свойства Version, UI, CurrentCulture, CurrentUICulture, PrivateData и Runspace содержат объекты со свойствами, которые могут оказаться очень полезными. Эти свойства будут рассмотрены в последующих примерах.
Пример 2
C:\PS>$h = get-host
C:\PS> $win = $h.ui.rawui.windowsize
C:\PS> $win.height = 10
C:\PS> $win.width = 10
C:\PS> $h.ui.rawui.set_windowsize($win)
Описание
-----------
Эта команда изменяет размеры окна оболочки Windows PowerShell, делая его высоту и ширину равной 10 пикселям.
Пример 3
C:\PS>(get-host).version | format-list -property *
Major : 2
Minor : 0
Build : -1
Revision : -1
MajorRevision : -1
MinorRevision : -1
Описание
-----------
Эта команда получает подробные сведения о версии Windows PowerShell, запущенной в основной программе. Эти значения можно просматривать, но их нельзя изменить.
Свойство Version командлета Get-Host содержит объект System.Version. Эта команда передает объект версии в командлет Format-List с помощью оператора конвейера (|). Команда Format-List использует параметр Property со значением * (все) для отображения всех свойств и значений объекта версии.
Пример 4
C:\PS>(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
Описание
-----------
Эта команда получает подробные сведения о текущей культуре, которая установлена для оболочки Windows PowerShell, запущенной в основной программе. Эта же информация возвращается при запуске командлета Get-Culture.
(Аналогично свойство CurrentUICulture возвращает тот же объект, что и командлет Get-UICulture.)
Свойство CurrentCulture объекта основной программы содержит объект System.Globalization.CultureInfo. С помощью оператора конвейера (|) эта команда передает объект CultureInfo командлету Format-List. Командлет Format-List использует параметр Property со значением * (все) для отображения всех свойств и значений объекта CultureInfo.
Пример 5
C:\PS>(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...}
Описание
-----------
Эта команда возвращает подробные сведения о формате даты и времени текущей культуры, которая используется в Windows PowerShell.
Свойство CurrentCulture объекта основной программы содержит объект CultureInfo, у которого имеется множество полезных свойств. Среди них свойство DateTimeFormat, содержащее объект DateTimeFormatInfo, в котором хранится большое число различных полезных сведений.
Чтобы выяснить тип объекта, хранящегося в свойстве объекта, воспользуйтесь командлетом Get-Member. Чтобы отобразить значения свойств объекта, воспользуйтесь командлетом Format-List.
Пример 6
C:\PS>(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)
Описание
-----------
Эта команда выводит свойства RawUI объекта основной программы. Изменение этих значений позволяет изменить внешний вид окна основной программы.
Пример 7
C:\PS>(get-host).ui.rawui.backgroundcolor = "Black"
C:\PS> cls
Описание
-----------
Эти команды изменяют цвет фона консоли Windows PowerShell на черный. Команда "cls" является псевдонимом функции Clear-Host, которая очищает экран и изменяет цвет всего экрана.
Это изменение действует только в рамках текущего сеанса. Чтобы изменить цвет фона консоли для всех сеансов, добавьте эту команду в профиль Windows PowerShell.
Пример 8
C:\PS>$host.privatedata.errorbackgroundcolor = "white"
Описание
-----------
Эта команда изменяет цвет фона сообщений об ошибках на белый.
Команда использует автоматическую переменную $host, в которой хранится объект текущей основной программы. Командлет Get-Host возвращает тот же объект, который хранится в переменной $host, поэтому их можно использовать на равных основаниях.
Эта команда использует свойство PrivateData переменной $host в качестве своего свойства ErrorBackgroundColor. Чтобы получить список всех свойств объекта, хранящегося в свойстве $host.privatedata, введите команду "$host.privatedata | format-list * ".