Powershell 창을 사용 할 때 가끔 폭이 너무 작아 불편 할 때가 있다. Height는 창을 늘리면 늘어 나지만 Width는 특정 크기 이상 최대화를 해도 늘어 나지 않는다. Property가 많은 개체를 열어 보거나 긴 text line을 봐야 하는 경우 갑갑 하기도 하다.
이때는 $Host.UI.RawUI.WindowSize 값을 조절 해 줌으로써 넓은 화면을 사용 할 수 있다.
단 변경할때 $Host.UI.RawUI.BufferSize 도 함께 조절 해야 실제 창에 맞게 text 가 표시 됨을 명심하고 특히 ‘Buffer Width는 Window Width 보다 같거나 커야 한다’ 라는 규칙만 주의 하여 조절 하자.
아래 스크립트는 -WidthPersent Parameter로 지정된 폭으로 창으로 확장 하거나. 값을 입력하지 않을 때 창 크기를 최대화 한다.
Set-WindowSize
function Set-WindowSize
{
param ($WidthPercent)
if ($WidthPercent -gt 100)
{
$WidthPercent = 100
}
$WindowSize = $Host.UI.RawUI.WindowSize
$BufferSize = $Host.UI.RawUI.BufferSize
$CurrentWindowWidth = $WindowSize.Width
$Width = $Host.UI.RawUI.MaxPhysicalWindowSize.Width
if ($WidthPercent -ne $null)
{
$Width = $Width * $WidthPercent / 100
}
else
{
$WindowSize.Height = $Host.UI.RawUI.MaxPhysicalWindowSize.Height
}
$WindowSize.Width = $Width
$BufferSize.Width = $Width
if ($CurrentWindowWidth -gt $WindowSize.Width)
{
$Host.UI.RawUI.WindowSize = $WindowSize
$Host.UI.RawUI.BufferSize = $BufferSize
}
else
{
$Host.UI.RawUI.BufferSize = $BufferSize
$Host.UI.RawUI.WindowSize = $WindowSize
}
}
$Host.UI.RawUI.MaxPhysicalWindowSize 또는 $Host.UI.RawUI.MaxWindowSize 값으로 현재 위치에서의 최대 창 크기를 파악 할 수 있다.
