Compartilhar via


Get-Host

Obtém um objeto que representa o programa de host atual.

Sintaxe

Get-Host []

Description

O cmdlet Get-Host obtém um objeto que representa o programa que está hospedando o Windows PowerShell.

A exibição padrão inclui o número de versão do Windows PowerShell e a região atual e as configurações de idioma que o host está usando, mas o objeto host contém uma grande quantidade de informações, incluindo informações detalhadas sobre a versão do Windows PowerShell que está em execução e a cultura atual e a cultura da interface do usuário do Windows PowerShell. Você também pode usar esse cmdlet para personalizar recursos da interface do usuário do programa host, como o texto e as cores da tela de fundo.

Exemplos

Exemplo 1: obter informações sobre o host do console do PowerShell

PS C:\> 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

Este comando exibe informações sobre o console do Windows PowerShell, que é o programa host atual do Windows PowerShell neste exemplo. Ele inclui o nome do host, a versão do Windows PowerShell em execução no host e a cultura atual e a cultura da interface do usuário.

As propriedades Version, UI, CurrentCulture, CurrentUICulture, PrivateData e Runspace contêm um objeto com propriedades muito úteis. Exemplos posteriores examinam essas propriedades.

Exemplo 2: Redimensionar a janela do PowerShell

PS C:\> $H = Get-Host
PS C:\> $Win = $H.UI.RawUI.WindowSize
PS C:\> $Win.Height = 10
PS C:\> $Win.Width  = 10
PS C:\> $H.UI.RawUI.Set_WindowSize($Win)

Esse comando redimensiona a janela do Windows PowerShell para 10 pixels por 10 pixels.

Exemplo 3: Obter a versão do PowerShell para o host

PS C:\> (Get-Host).Version | Format-List -Property *
Major         : 2
Minor         : 0
Build         : -1
Revision      : -1
MajorRevision : -1
MinorRevision : -1

Esse comando obtém informações detalhadas sobre a versão do Windows PowerShell em execução no host. Você pode exibir, mas não alterar, esses valores.

A propriedade Version do Get-Host contém um objeto System.Version. Esse comando usa um operador de pipeline (|) para enviar o objeto de versão para o cmdlet Format-List. O comando Format-List usa o parâmetro Property com um valor de todos (*) para exibir todas as propriedades e valores de propriedade do objeto de versão.

Exemplo 4: Obter a cultura atual para o host

PS C:\> (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

Esse comando obtém informações detalhadas sobre o conjunto de cultura atual do Windows PowerShell em execução no host. Essas são as mesmas informações retornadas pelo cmdlet Get-Culture.

Da mesma forma, a propriedade CurrentUICulture retorna o mesmo objeto que Get-UICulture retorna.

A propriedade CurrentCulture do objeto host contém um objeto System.Globalization.CultureInfo. Esse comando usa um operador de pipeline (|) para enviar o objeto CultureInfo para o cmdlet Format-List. O comando Format-List usa o parâmetro Property com um valor de todos (*) para exibir todas as propriedades e valores de propriedade do objeto CultureInfo.

Exemplo 5: Obter o DateTimeFormat para a cultura atual

PS C:\> (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...}

Este comando retorna informações detalhadas sobre DateTimeFormat da cultura atual que está sendo usada para o Windows PowerShell.

A propriedade CurrentCulture do objeto host contém um objeto CultureInfo que, por sua vez, tem muitas propriedades úteis. Entre eles, a propriedade DateTimeFormat contém um objeto DateTimeFormatInfo com muitas propriedades úteis.

Para localizar o tipo de um objeto armazenado em uma propriedade de objeto, use o cmdlet Get-Member. Para exibir os valores de propriedade do objeto, use o cmdlet Format-List.

Exemplo 6: Obter a propriedade RawUI para o host

PS C:\> (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)

Este comando exibe as propriedades da propriedade RawUI do objeto host. Alterando esses valores, você pode alterar a aparência do programa host.

Exemplo 7: Definir a cor da tela de fundo para o console do PowerShell

PS C:\> (Get-Host).UI.RawUI.BackgroundColor = "Black"
PS C:\> cls

Esses comandos alteram a cor da tela de fundo do console do Windows PowerShell para preto. O comando cls é um alias para a função Clear-Host, que limpa a tela e altera toda a tela para a nova cor.

Essa alteração só entra em vigor na sessão atual. Para alterar a cor da tela de fundo do console para todas as sessões, adicione o comando ao seu perfil do Windows PowerShell.

Exemplo 8: Definir a cor da tela de fundo para mensagens de erro

PS C:\> $Host.PrivateData.ErrorBackgroundColor = "white"

Esse comando altera a cor da tela de fundo das mensagens de erro para branco.

Esse comando usa a variável $Host automática, que contém o objeto host do programa host atual. get-host retorna o mesmo objeto que $Host contém, para que você possa usá-los de forma intercambiável.

Esse comando usa a propriedade PrivateData de $Host como sua propriedade ErrorBackgroundColor. Para ver todas as propriedades do objeto na propriedade $Host.PrivateData, digite $host.privatedata | format-list *.

Entradas

None

Não é possível redirecionar a entrada para este cmdlet.

Saídas

System.Management.Automation.Internal.Host.InternalHost

Get-Host retorna um objeto System.Management.Automation.Internal.Host.InternalHost.

Observações

  • A variável $Host automática contém o mesmo objeto que get-host retorna e você pode usá-la da mesma maneira. Da mesma forma, as variáveis automáticas $PSCulture e $PSUICulture contêm os mesmos objetos que as propriedades CurrentCulture e CurrentUICulture do objeto host contêm. Você pode usar esses recursos de forma intercambiável.

    Para obter mais informações, consulte about_Automatic_Variables.