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 l'area corrente e le impostazioni della lingua in uso dell'host, ma l'oggetto host contiene un'ampia gamma di informazioni, incluse informazioni dettagliate sulla versione di Windows PowerShell attualmente in esecuzione e le impostazioni cultura correnti e le impostazioni cultura 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

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 informazioni sulla console di PowerShell, ovvero il programma host corrente per PowerShell in questo esempio. Include il nome dell'host, la versione di PowerShell in esecuzione nell'host e le impostazioni cultura e le impostazioni cultura correnti dell'interfaccia utente.

L'interfaccia utente versione, , CurrentCulture, CurrentUICulture, PrivateDatae proprietà Runspace contengono un oggetto con altre proprietà utili. Negli esempi successivi vengono esaminate queste proprietà.

Esempio 2: Ridimensionare la finestra di PowerShell

$H = Get-Host
$Win = $H.UI.RawUI.WindowSize
$Win.Height = 10
$Win.Width  = 10
$H.UI.RawUI.Set_WindowSize($Win)

Questo comando ridimensiona la finestra di Windows PowerShell a 10 righe di 10 caratteri.

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

(Get-Host).Version

Major  Minor  Build  Revision PSSemVerPreReleaseLabel    PSSemVerBuildLabel
-----  -----  -----  -------- -----------------------    ------------------
7      4      0      -1       preview.1

Questo comando ottiene informazioni dettagliate sulla versione di Windows PowerShell in esecuzione nell'host. È possibile visualizzare, ma non modificare, questi valori.

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 proprietà 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

(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

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 pipeline (|) per inviare l'oggetto CultureInfo al cmdlet Format-List. Il comando Format-List usa il parametro proprietà 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

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

Questo comando restituisce informazioni dettagliate su 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 queste, la proprietà DateTimeFormat contiene un oggetto DateTimeFormatInfo con molte proprietà utili.

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

Esempio 6: Ottenere la proprietà RawUI per l'host

Questo comando visualizza le proprietà della proprietà RawUI dell'oggetto host. Modificando questi valori, è possibile modificare l'aspetto del programma 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

Nota

Nelle piattaforme non Windows, ForegroundColor e BackgroundColor predefinita per -1 perché non esiste un modo coerente per ottenere questi elementi su piattaforme non Windows.

Input

None

Non è possibile inviare tramite pipe oggetti a questo cmdlet.

Output

System.Management.Automation.Internal.Host.InternalHost

Questo cmdlet restituisce un oggetto InternalHost.

Note

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

Nota

Le impostazioni dei colori in $Host.PrivateData sono state sostituite dalla variabile di preferenza $PSStyle. Per altre informazioni, vedere about_ANSI_Terminals.

Per altre informazioni, vedere about_Automatic_Variables.