Condividi tramite


Get-Host

Ottiene un oggetto che rappresenta il programma host corrente.

Sintassi

Get-Host []

Descrizione

Il cmdlet Get-Host ottiene un oggetto che rappresenta il programma che ospita Windows PowerShell.

La visualizzazione predefinita include il numero di versione di Windows PowerShell e le impostazioni correnti per l'area geografica e la lingua usate dall'host, mentre l'oggetto host contiene molte informazioni, tra cui le informazioni dettagliate sulla versione di Windows PowerShell attualmente in esecuzione e le impostazioni cultura correnti e dell'interfaccia utente di Windows PowerShell. È anche possibile usare questo cmdlet per personalizzare le funzionalità dell'interfaccia utente del programma host, ad esempio il testo e i colori di sfondo.

Esempio

Esempio 1: Ottenere informazioni sull'host della console di 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

Questo comando visualizza le informazioni sulla console di Windows PowerShell, ovvero in questo esempio il programma host corrente per Windows PowerShell. Include il nome dell'host, la versione di Windows PowerShell eseguita nell'host e le impostazioni cultura correnti e dell'interfaccia utente.

Le proprietà Version, UI, CurrentCulture, CurrentUICulture, PrivateData e Runspace contengono ognuna un oggetto con proprietà molto utili, che verranno esaminate negli esempi successivi.

Esempio 2: Ridimensionare la finestra di 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)

Questo comando ridimensiona la finestra di Windows PowerShell a 10 pixel per 10 pixel.

Esempio 3: Ottenere la versione di PowerShell per l'host

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

Questo comando ottiene informazioni dettagliate sulla versione di Windows PowerShell in esecuzione nell'host. Questi valori possono essere visualizzati ma non modificati.

La proprietà Version di Get-Host contiene un oggetto System.Version . Questo comando usa un operatore pipeline (|) per inviare l'oggetto versione al cmdlet Format-List. Il comando Format-List usa il parametro Property con un valore di tutti (*) per visualizzare tutte le proprietà e i valori delle proprietà dell'oggetto version.

Esempio 4: Ottenere le impostazioni cultura correnti per l'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

Questo comando ottiene informazioni dettagliate sulle impostazioni cultura correnti impostate per Windows PowerShell in esecuzione nell'host. Si tratta delle stesse informazioni restituite dal cmdlet Get-Culture.

Analogamente, la proprietà CurrentUICulture restituisce lo stesso oggetto restituito Get-UICulture.

La proprietà CurrentCulture dell'oggetto host contiene un oggetto System.Globalization.CultureInfo . Questo comando usa un operatore della pipeline (|) per inviare l'oggetto CultureInfo al cmdlet Format-List. Il comando Format-List usa il parametro Property con un valore di tutti (*) per visualizzare tutte le proprietà e i valori delle proprietà dell'oggetto CultureInfo .

Esempio 5: Ottenere DateTimeFormat per le impostazioni cultura correnti

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

Questo comando restituisce informazioni dettagliate sulla proprietà DateTimeFormat delle impostazioni cultura correnti usate per Windows PowerShell.

La proprietà CurrentCulture dell'oggetto host contiene un oggetto CultureInfo che, a sua volta, ha molte proprietà utili. Tra questi, la proprietà DateTimeFormat contiene un oggetto DateTimeFormatInfo con molte proprietà utili.

Per trovare il tipo di oggetto archiviato nella proprietà di un oggetto, usare il cmdlet Get-Member. Per visualizzare i valori delle proprietà dell'oggetto, usare il cmdlet Format-List.

Esempio 6: Ottenere la proprietà RawUI per l'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)

Questo comando visualizza le proprietà della proprietà RawUI dell'oggetto host. Modificando questi valori si modifica l'aspetto del programma host.

Esempio 7: Impostare il colore di sfondo per la console di PowerShell

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

Questi comandi modificano il colore di sfondo della console di Windows PowerShell in nero. Il comando cls è un alias per la funzione Clear-Host, che cancella lo schermo e modifica l'intero schermo al nuovo colore.

Questa modifica è valida solo nella sessione corrente. Per modificare il colore di sfondo della console per tutte le sessioni, aggiungere il comando al profilo di Windows PowerShell.

Esempio 8: Impostare il colore di sfondo per i messaggi di errore

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

Questo comando modifica il colore di sfondo dei messaggi di errore in bianco.

Questo comando usa la variabile automatica $Host contenente l'oggetto host per il programma host corrente. Get-Host restituisce lo stesso oggetto che $Host contiene, in modo da poterli usare in modo intercambiabile.

Questo comando usa la proprietà PrivateData di $Host come proprietà ErrorBackgroundColor. Per visualizzare tutte le proprietà dell'oggetto nella proprietà $Host.PrivateData, digitare $host.privatedata | format-list *.

Input

None

Non è possibile inviare input tramite pipe a questo cmdlet.

Output

System.Management.Automation.Internal.Host.InternalHost

Get-Host restituisce un oggetto System.Management.Automation.Internal.Host.InternalHost .

Note

  • La variabile automatica $Host contiene lo stesso oggetto restituito da Get-Host e è possibile usarlo nello stesso modo. Analogamente, le variabili $PSCulture e $PSUICulture automatiche contengono gli stessi oggetti che contengono le proprietà CurrentCulture e CurrentUICulture dell'oggetto host. È possibile usare queste funzionalità in modo intercambiabile.

    Per altre informazioni, vedere about_Automatic_Variables.