Get-Host
Hiermee haalt u een object op dat het huidige hostprogramma vertegenwoordigt.
Syntaxis
Get-Host []
Description
De cmdlet Get-Host haalt een object op dat het programma vertegenwoordigt dat als host fungeert voor Windows PowerShell.
De standaardweergave bevat het windows PowerShell-versienummer en de huidige regio- en taalinstellingen die de host gebruikt, maar het hostobject bevat een schat aan informatie, waaronder gedetailleerde informatie over de versie van Windows PowerShell die momenteel wordt uitgevoerd en de huidige cultuur en ui-cultuur van Windows PowerShell. U kunt deze cmdlet ook gebruiken om functies van de gebruikersinterface van het hostprogramma aan te passen, zoals de tekst- en achtergrondkleuren.
Voorbeelden
Voorbeeld 1: Informatie ophalen over de PowerShell-consolehost
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
Met deze opdracht wordt informatie weergegeven over de Windows PowerShell-console. Dit is het huidige hostprogramma voor Windows PowerShell in dit voorbeeld. Deze bevat de naam van de host, de versie van Windows PowerShell die wordt uitgevoerd op de host en de huidige cultuur en ui-cultuur.
De eigenschappen Version, UI, CurrentCulture, CurrentUICulture, PrivateData en Runspace bevatten elk een object met zeer nuttige eigenschappen. Latere voorbeelden onderzoeken deze eigenschappen.
Voorbeeld 2: Het formaat van het PowerShell-venster wijzigen
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)
Met deze opdracht wordt het formaat van het Windows PowerShell-venster gewijzigd in 10 pixels bij 10 pixels.
Voorbeeld 3: De PowerShell-versie voor de host ophalen
PS C:\> (Get-Host).Version | Format-List -Property *
Major : 2
Minor : 0
Build : -1
Revision : -1
MajorRevision : -1
MinorRevision : -1
Met deze opdracht krijgt u gedetailleerde informatie over de versie van Windows PowerShell die wordt uitgevoerd op de host. U kunt deze waarden bekijken, maar niet wijzigen.
De eigenschap Versie van Get-Host- bevat een System.Version-object. Met deze opdracht wordt een pijplijnoperator (|) gebruikt om het versieobject naar de Format-List-cmdlet te verzenden. De opdracht Format-List gebruikt de parameter Eigenschap met een waarde van alle (*) om alle eigenschappen en eigenschapswaarden van het versieobject weer te geven.
Voorbeeld 4: De huidige cultuur voor de host ophalen
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
Met deze opdracht krijgt u gedetailleerde informatie over de huidige cultuurset voor Windows PowerShell die wordt uitgevoerd op de host. Dit is dezelfde informatie die wordt geretourneerd door de Get-Culture cmdlet.
Op dezelfde manier retourneert de eigenschap CurrentUICulture hetzelfde object dat Get-UICulture retourneert.
De eigenschap CurrentCulture van het hostobject bevat een System.Globalization.CultureInfo-object. Met deze opdracht wordt een pijplijnoperator (|) gebruikt om het object CultureInfo te verzenden naar de Format-List-cmdlet. De opdracht Format-List maakt gebruik van de parameter Eigenschap met een waarde van alle (*) om alle eigenschappen en eigenschapswaarden van het object CultureInfo weer te geven.
Voorbeeld 5: De DateTimeFormat voor de huidige cultuur ophalen
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...}
Met deze opdracht wordt gedetailleerde informatie geretourneerd over de DateTimeFormat van de huidige cultuur die wordt gebruikt voor Windows PowerShell.
De eigenschap CurrentCulture van het hostobject bevat een CultureInfo-object dat op zijn beurt veel nuttige eigenschappen heeft. Onder hen bevat de eigenschap DateTimeFormat een DateTimeFormatInfo object met veel nuttige eigenschappen.
Gebruik de cmdlet Get-Member om het type van een object te vinden dat is opgeslagen in een objecteigenschap. Als u de eigenschapswaarden van het object wilt weergeven, gebruikt u de cmdlet Format-List.
Voorbeeld 6: de RawUI-eigenschap voor de host ophalen
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)
Met deze opdracht worden de eigenschappen van de eigenschap RawUI van het hostobject weergegeven. Door deze waarden te wijzigen, kunt u het uiterlijk van het hostprogramma wijzigen.
Voorbeeld 7: De achtergrondkleur voor de PowerShell-console instellen
PS C:\> (Get-Host).UI.RawUI.BackgroundColor = "Black"
PS C:\> cls
Met deze opdrachten wijzigt u de achtergrondkleur van de Windows PowerShell-console in zwart. De opdracht cls is een alias voor de functie Clear-Host, waarmee het scherm wordt gewist en het hele scherm wordt gewijzigd in de nieuwe kleur.
Deze wijziging is alleen van kracht in de huidige sessie. Als u de achtergrondkleur van de console voor alle sessies wilt wijzigen, voegt u de opdracht toe aan uw Windows PowerShell-profiel.
Voorbeeld 8: De achtergrondkleur voor foutberichten instellen
PS C:\> $Host.PrivateData.ErrorBackgroundColor = "white"
Met deze opdracht wordt de achtergrondkleur van foutberichten gewijzigd in wit.
Deze opdracht maakt gebruik van de $Host automatische variabele, die het hostobject voor het huidige hostprogramma bevat. Get-Host- hetzelfde object retourneert dat $Host bevat, zodat u deze door elkaar kunt gebruiken.
Deze opdracht maakt gebruik van de eigenschap PrivateData van $Host als de eigenschap ErrorBackgroundColor.
Als u alle eigenschappen van het object in de eigenschap $Host.PrivateData wilt zien, typt u $host.privatedata | format-list *
.
Invoerwaarden
None
U kunt invoer voor deze cmdlet niet doorsluisen.
Uitvoerwaarden
System.Management.Automation.Internal.Host.InternalHost
Get-Host- retourneert een System.Management.Automation.Internal.Host.InternalHost-object.
Notities
De $Host automatische variabele bevat hetzelfde object dat Get-Host- retourneert en u kunt deze op dezelfde manier gebruiken. Op dezelfde manier bevatten de $PSCulture en $PSUICulture automatische variabelen dezelfde objecten die de CurrentCulture en CurrentUICulture eigenschappen van het hostobject bevatten. U kunt deze functies door elkaar gebruiken.
Zie about_Automatic_Variables voor meer informatie.