Compartir a través de


Get-Host

Obtiene un objeto que representa el programa host actual.

Sintaxis

Get-Host []

Description

El cmdlet Get-Host obtiene un objeto que representa el programa que hospeda Windows PowerShell.

La pantalla predeterminada incluye el número de versión de Windows PowerShell y la configuración actual de región e idioma que usa el host, pero el objeto host contiene una gran cantidad de información, incluida información detallada sobre la versión de Windows PowerShell que se está ejecutando actualmente y la referencia cultural actual y la referencia cultural de la interfaz de usuario de Windows PowerShell. También puede usar este cmdlet para personalizar las características de la interfaz de usuario del programa host, como el texto y los colores de fondo.

Ejemplos

Ejemplo 1: Obtener información sobre el host de consola de 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 muestra información sobre la consola de Windows PowerShell, que es el programa host actual para Windows PowerShell en este ejemplo. Incluye el nombre del host, la versión de Windows PowerShell que se ejecuta en el host y la referencia cultural actual y la referencia cultural de la interfaz de usuario.

Las propiedades Version, UI, CurrentCulture, CurrentUICulture, PrivateData y Runspace contienen cada uno un objeto con propiedades muy útiles. En los ejemplos posteriores se examinan estas propiedades.

Ejemplo 2: Cambiar el tamaño de la ventana de 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)

Este comando cambia el tamaño de la ventana de Windows PowerShell a 10 píxeles por 10 píxeles.

Ejemplo 3: Obtención de la versión de PowerShell para el host

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

Este comando obtiene información detallada sobre la versión de Windows PowerShell que se ejecuta en el host. Puede ver, pero no cambiar, estos valores.

La propiedad Version de Get-Host contiene un objeto System.Version. Este comando usa un operador de canalización (|) para enviar el objeto de versión al cmdlet Format-List. El comando Format-List usa el parámetro property con un valor de todos (*) para mostrar todas las propiedades y los valores de propiedad del objeto de versión.

Ejemplo 4: Obtención de la referencia cultural actual para el 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

Este comando obtiene información detallada sobre el conjunto de referencia cultural actual para Windows PowerShell que se ejecuta en el host. Esta es la misma información que devuelve el cmdlet Get-Culture.

Del mismo modo, la propiedad CurrentUICulture devuelve el mismo objeto que Get-UICulture devuelve.

La propiedad CurrentCulture del objeto host contiene un objeto System.Globalization.CultureInfo. Este comando usa un operador de canalización (|) para enviar el objeto CultureInfo al cmdlet Format-List. El comando Format-List usa el parámetro Property con un valor de todos (*) para mostrar todas las propiedades y valores de propiedad del objeto CultureInfo.

Ejemplo 5: Obtener dateTimeFormat para la referencia cultural actual

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 devuelve información detallada sobre dateTimeFormat de la referencia cultural actual que se usa para Windows PowerShell.

La propiedad CurrentCulture del objeto host contiene un objeto CultureInfo que, a su vez, tiene muchas propiedades útiles. Entre ellos, la propiedad DateTimeFormat contiene un objeto DateTimeFormatInfo con muchas propiedades útiles.

Para buscar el tipo de un objeto almacenado en una propiedad de objeto, use el cmdlet Get-Member. Para mostrar los valores de propiedad del objeto, use el cmdlet Format-List.

Ejemplo 6: Obtención de la propiedad RawUI para el 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 muestra las propiedades del propiedad RawUI del objeto host. Al cambiar estos valores, puede cambiar la apariencia del programa host.

Ejemplo 7: Establecer el color de fondo de la consola de PowerShell

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

Estos comandos cambian el color de fondo de la consola de Windows PowerShell a negro. El comando cls es un alias para la función Clear-Host, que borra la pantalla y cambia toda la pantalla al nuevo color.

Este cambio solo es efectivo en la sesión actual. Para cambiar el color de fondo de la consola de todas las sesiones, agregue el comando al perfil de Windows PowerShell.

Ejemplo 8: Establecer el color de fondo de los mensajes de error

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

Este comando cambia el color de fondo de los mensajes de error a blanco.

Este comando usa la $Host variable automática, que contiene el objeto host para el programa host actual. Get-Host devuelve el mismo objeto que $Host contiene, por lo que puede usarlos indistintamente.

Este comando usa la propiedad PrivateData de $Host como su propiedad ErrorBackgroundColor. Para ver todas las propiedades del objeto en la propiedad $Host.PrivateData, escriba $host.privatedata | format-list *.

Entradas

None

No se puede canalizar la entrada a este cmdlet.

Salidas

System.Management.Automation.Internal.Host.InternalHost

Get-Host devuelve un objeto System.Management.Automation.Internal.Host.InternalHost.

Notas

  • La variable automática $Host contiene el mismo objeto que Get-Host y puede usarlo de la misma manera. Del mismo modo, las variables automáticas $PSCulture y $PSUICulture contienen los mismos objetos que contienen las propiedades CurrentCulture y CurrentUICulture del objeto host. Puede usar estas características indistintamente.

    Para obtener más información, consulte about_Automatic_Variables.