다음을 통해 공유


Get-Host

현재 호스트 프로그램을 나타내는 개체를 가져옵니다.

구문

Get-Host []

Description

cmdlet은 Get-Host Windows PowerShell을 호스팅하는 프로그램을 나타내는 개체를 가져옵니다.

기본 디스플레이에는 Windows PowerShell 버전 번호와 호스트가 사용 중인 현재 지역 및 언어 설정이 포함되지만 호스트 개체에는 현재 실행 중인 Windows PowerShell 버전과 Windows PowerShell의 현재 문화권 및 UI 문화권에 대한 자세한 정보를 포함하여 다양한 정보가 포함됩니다. 이 cmdlet을 사용하여 텍스트 및 배경색과 같은 호스트 프로그램 사용자 인터페이스의 기능을 사용자 지정할 수도 있습니다.

예제

예제 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 문화권이 포함됩니다.

버전, UI, CurrentCulture, CurrentUICulture, PrivateDataRunspace 속성에는 각각 다른 유용한 속성이 있는 개체가 포함됩니다. 뒤에 나오는 예제에서 이러한 속성을 검사합니다.

예제 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
-----  -----  -----  --------
5      1      22621  963

이 명령은 호스트에서 실행되는 Windows PowerShell 버전에 대한 자세한 정보를 가져옵니다. 이러한 값은 볼 수 있지만 변경할 수는 없습니다.

Version 속성 Get-Host 은 System.Version 개체를 포함합니다. 이 명령은 파이프라인 연산자(|)를 사용하여 버전 개체를 cmdlet으로 Format-List 보냅니다. 이 Format-List 명령은 모든 값(*)이 있는 Property 매개 변수를 사용하여 버전 개체의 모든 속성 및 속성 값을 표시합니다.

예제 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에 대한 현재 문화권 집합에 대한 자세한 정보를 가져옵니다. cmdlet에서 반환 Get-Culture 하는 것과 동일한 정보입니다.

마찬가지로 CurrentUICulture 속성은 반환하는 동일한 개체를 Get-UICulture 반환합니다.

호스트 개체의 CurrentCulture 속성에는 System.Globalization.CultureInfo 개체가 포함됩니다. 이 명령은 파이프라인 연산자(|)를 사용하여 CultureInfo 개체를 cmdlet으로 Format-List 보냅니다. 이 Format-List 명령은 모든 값이 있는 Property 매개 변수를* 사용하여 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 개체가 포함됩니다.

개체 속성에 저장된 개체의 형식을 찾으려면 cmdlet을 Get-Member 사용합니다. 개체의 속성 값을 표시하려면 cmdlet을 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

예제 7: PowerShell 콘솔의 배경색 설정

이러한 명령은 Windows PowerShell 콘솔의 배경색을 검은색으로 변경합니다. 이 Clear-Host 명령은 화면을 지우고 콘솔 창을 새 색으로 다시 설정합니다.

(Get-Host).UI.RawUI.BackgroundColor = "Black"
Clear-Host

이 변경 내용은 현재 세션에서만 적용됩니다. 모든 세션에 대한 콘솔의 배경색을 변경하려면 PowerShell 프로필에 명령을 추가합니다.

예제 8: 오류 메시지의 배경색 설정

$Host.PrivateData.ErrorBackgroundColor = "white"

이 명령은 오류 메시지의 배경색을 흰색으로 변경합니다.

이 명령은 현재 호스트 프로그램의 호스트 개체를 포함하는 자동 변수를 사용합니다 $Host . Get-Host 는 포함하는 $Host 동일한 개체를 반환하므로 서로 바꿔서 사용할 수 있습니다.

이 명령은 ErrorBackgroundColor 속성으로 PrivateData $Host 속성을 사용합니다. 에 있는 $Host개체의 모든 속성을 보려면 PrivateData 속성, 형식 $host.PrivateData | format-list *.

입력

None

개체를 이 cmdlet으로 파이프할 수 없습니다.

출력

System.Management.Automation.Internal.Host.InternalHost

이 cmdlet은 InternalHost 개체를 반환합니다.

참고

자동 변수는 $Host 반환하는 동일한 개체를 Get-Host 포함하며 동일한 방식으로 사용할 수 있습니다. 마찬가지로 자동 변수에는 $PSUICulture 호스트 개체의 $PSCulture CurrentCulture 및 CurrentUICulture 속성에 포함된 것과 동일한 개체가 포함됩니다. 이러한 기능을 서로 교환하여 사용할 수 있습니다.

자세한 내용은 about_Automatic_Variables를 참조하세요.