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