Powershell – Resize Powershell Window size

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 값으로 현재 위치에서의 최대 창 크기를 파악 할 수 있다.

답글 남기기

이메일 주소는 공개되지 않습니다.

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> 

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.