Get-Host
Obtém um objeto que representa o programa host atual.
Sintaxe
Get-Host []
Description
O Get-Host
cmdlet obtém um objeto que representa o programa que está hospedando o Windows PowerShell.
A exibição padrão inclui o número da versão do Windows PowerShell e a região e as configurações de idioma atuais usadas pelo host, mas o objeto de host contém uma grande quantidade de informações, inclusive informações detalhadas sobre a versão do Windows PowerShell que está sendo executada e a cultura atual e a cultura da interface do usuário do Windows PowerShell. Você também pode usar esse cmdlet para personalizar os recursos da interface de usuário do programa host, como as cores de plano de fundo e texto.
Exemplos
Exemplo 1: Obter informações sobre o host do console do 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
Esse comando exibe informações sobre o console do PowerShell, que é o programa host atual do PowerShell neste exemplo. Ele inclui o nome do host, a versão do PowerShell que está sendo executada 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 outras propriedades úteis. Exemplos posteriores examinam essas propriedades.
Exemplo 2: Redimensionar a janela do PowerShell
$H = Get-Host
$Win = $H.UI.RawUI.WindowSize
$Win.Height = 10
$Win.Width = 10
$H.UI.RawUI.Set_WindowSize($Win)
Esse comando redimensiona a janela do Windows PowerShell para 10 linhas por 10 caracteres.
Exemplo 3: Obter a versão do PowerShell para o host
(Get-Host).Version
Major Minor Build Revision PSSemVerPreReleaseLabel PSSemVerBuildLabel
----- ----- ----- -------- ----------------------- ------------------
7 4 0 -1 preview.1
Este 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 de Get-Host
contém um objeto System.Version . Esse comando usa um operador de pipeline (|
) para enviar o objeto de versão para o Format-List
cmdlet. O Format-List
comando usa o parâmetro Property com um valor de all (*
) para exibir todas as propriedades e valores de propriedade do objeto de versão.
Exemplo 4: Obter a cultura atual do 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
Este comando obtém informações detalhadas sobre a cultura atual definida para o Windows PowerShell em execução no host. Essas são as mesmas informações retornadas Get-Culture
pelo cmdlet.
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 Format-List
cmdlet. O Format-List
comando usa o parâmetro Property com um valor de all (*
) para exibir todas as propriedades e valores de propriedade do objeto CultureInfo .
Exemplo 5: Obter o DateTimeFormat para a cultura atual
(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...}
Este comando retorna informações detalhadas sobre o 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 Get-Member
cmdlet. Para exibir os valores de propriedade do objeto, use o Format-List
cmdlet.
Exemplo 6: Obter a propriedade RawUI para o host
Esse comando exibe as propriedades da propriedade RawUI do objeto host. Ao alterar esses valores, você pode alterar a aparência do programa host.
(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
Observação
Em plataformas não Windows, ForegroundColor e BackgroundColor são padronizados -1
porque não há uma maneira consistente de obtê-los em plataformas não Windows.
Entradas
None
Você não pode canalizar objetos para esse cmdlet.
Saídas
System.Management.Automation.Internal.Host.InternalHost
Esse cmdlet retorna um objeto InternalHost .
Observações
A $Host
variável automática contém o mesmo objeto que Get-Host
retorna e você pode usá-la da mesma maneira. Da mesma forma, as $PSCulture
variáveis e $PSUICulture
automatic contêm os mesmos objetos que as propriedades CurrentCulture e CurrentUICulture do objeto host contêm. Você pode usar esses recursos alternadamente.
Observação
As configurações de cor foram $Host.PrivateData
substituídas $PSStyle
pela variável de preferência. Para obter mais informações, consulte about_ANSI_Terminals.
Para obter mais informações, confira about_Automatic_Variables.