Get-Host
現在のホスト プログラムを表すオブジェクトを取得します。
構文
Get-Host []
説明
コマンドレットはGet-Host
、Windows PowerShellをホストしているプログラムを表す オブジェクトを取得します。
既定の表示には、Windows PowerShell のバージョン番号とホストで使用されている現在の地域と言語の設定が含まれていますが、ホスト オブジェクトには、現在実行中の Windows PowerShell のバージョンの詳細情報、現在のカルチャ、Windows PowerShell の UI カルチャなど多くの情報が含まれています。 このコマンドレットを使用して、テキストや背景色などのホスト プログラムのユーザー インターフェイスの機能をカスタマイズすることもできます。
例
例 1: 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
このコマンドは、PowerShell コンソールに関する情報を表示します。これは、この例の PowerShell の現在のホスト プログラムです。 これには、ホストの名前、ホストで実行されている PowerShell のバージョン、および現在のカルチャと UI カルチャが含まれます。
Version、UI、CurrentCulture、CurrentUICulture、PrivateData、および Runspace の各プロパティには、他の便利なプロパティを含むオブジェクトが含まれています。 後で示す例では、これらのプロパティを説明します。
例 2: PowerShell ウィンドウのサイズを変更する
$H = Get-Host
$Win = $H.UI.RawUI.WindowSize
$Win.Height = 10
$Win.Width = 10
$H.UI.RawUI.Set_WindowSize($Win)
このコマンドは、Windows PowerShell ウィンドウのサイズを 10 行ずつ 10 文字に変更します。
例 3: ホストの PowerShell バージョンを取得する
(Get-Host).Version
Major Minor Build Revision
----- ----- ----- --------
7 3 3 -1
このコマンドは、ホストで実行されている Windows PowerShell のバージョンに関する詳細情報を取得します。 これらの値は表示できますが、変更することはできません。
の Get-Host
Version プロパティには、 System.Version オブジェクトが含まれています。 このコマンドでは、パイプライン演算子 (|
) を使用して、バージョン オブジェクトを コマンドレットに Format-List
送信します。 このコマンドでは Format-List
、 Property パラメーターと all (*
) の値を使用して、バージョン オブジェクトのすべてのプロパティとプロパティ値を表示します。
例 4: ホストの現在のカルチャを取得する
(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
このコマンドは、ホストで実行されている Windows PowerShell に設定されている現在のカルチャに関する詳細情報を取得します。 これは、 コマンドレットによって Get-Culture
返されるのと同じ情報です。
同様に、 CurrentUICulture プロパティは、 を返すのと同じオブジェクトを Get-UICulture
返します。
ホスト オブジェクトの CurrentCulture プロパティには、 System.Globalization.CultureInfo オブジェクトが含まれています。 このコマンドでは、パイプライン演算子 (|
) を使用して CultureInfo オブジェクトを コマンドレットに Format-List
送信します。 このコマンドでは Format-List
、 Property パラメーターと all (*
) の値を使用して、 CultureInfo オブジェクトのすべてのプロパティとプロパティ値を表示します。
例 5: 現在のカルチャの DateTimeFormat を取得する
(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...}
このコマンドは、Windows PowerShell に使用されている現在のカルチャの DateTimeFormat に関する詳細情報を返します。
ホスト オブジェクトの CurrentCulture プロパティには CultureInfo オブジェクトが含まれています。このオブジェクトには、多くの便利なプロパティがあります。 その中で、 DateTimeFormat プロパティには、多くの便利なプロパティを持つ DateTimeFormatInfo オブジェクトが含まれています。
オブジェクト プロパティに格納されているオブジェクトの型を見つけるには、 コマンドレットを Get-Member
使用します。 オブジェクトのプロパティ値を表示するには、 コマンドレットを Format-List
使用します。
例 6: ホストの RawUI プロパティを取得する
このコマンドは、ホスト オブジェクトの RawUI プロパティのプロパティを表示します。 これらの値を変更すると、ホスト プログラムの外観を変更することができます。
(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
注意
Windows 以外のプラットフォームでは、Windows 以外のプラットフォームでは一貫した方法がないため、 ForegroundColor と BackgroundColor は既定 -1
で に設定されます。
入力
None
オブジェクトをこのコマンドレットにパイプすることはできません。
出力
System.Management.Automation.Internal.Host.InternalHost
このコマンドレットは InternalHost オブジェクトを返します。
メモ
自動変数には $Host
、 を返すのと同じオブジェクトが Get-Host
含まれており、同じ方法で使用できます。 同様に、 変数と$PSUICulture
自動変数には、$PSCulture
ホスト オブジェクトの CurrentCulture プロパティと CurrentUICulture プロパティと同じオブジェクトが含まれます。 これらの機能は置き換えて使用できます。
注意
の色設定 $Host.PrivateData
は、ユーザー設定変数に $PSStyle
置き換えられました。 詳細については、「 about_ANSI_Terminals」を参照してください。
詳細については、「about_Automatic_Variables」を参照してください。