PowerShell-실행중인 스크립트의 WindowSize 모니터링


0

에 기반한 간단한 UI가있는 스크립트가 Write-Progress있습니다.

예를 들어, 분리기는 다음과 같습니다.

$ui_seperator = '_' * (Get-Host).UI.RawUI.WindowSize.Width

WindowSize가 변경 될 때 마다이 구분자를 조정하고 싶지만 백그라운드에서 스크립트를 모니터링하는 방법을 찾을 수 없습니다.

기능이나 작업 내에서 다음과 같이 작동해야한다고 생각합니다.

while ($true) {

    if ($window_width -ne ($window_width = (Get-Host).UI.RawUI.WindowSize.Width)) {

        $ui_seperator = '_' * $window_width

    }
}

그러나 기능과 작업은 거의 알지 못하며 원하는 결과를 얻는 방법을 찾을 수 없었습니다. 도움을 주셔서 감사합니다! :)


글쎄, 당신은 확실히 자신의 Powershell 호스트 응용 프로그램을 작성한 다음 크기 조정 이벤트를 트리거 할 수 있습니다.
EBGreen

처음에는 파워 쉘에서 GUI를 작성할 수있을 때 많은 작업처럼 보입니다.
EBGreen

@EBGreen Trigger는 내가 필요한 단어입니다 ... 이상하게 생각하지 않았습니다. 트리거와 GUI를 모두 살펴보고 원하는 결과를 얻을 수 있는지 확인하겠습니다. 고마워요 :)
FatalBulletHit

@EBGreen 내 솔루션을 살펴볼 위험이 있습니다. 이것이 얼마나 좋거나 끔찍한 지 잘 모르겠지만 작동합니다 ... ._.
FatalBulletHit

답변:


0

나는 여전히 PowerShell을 배우고 있지만 실제 결과를 얻었습니다. 나는 4 가지 기능을 썼다.

브레이크 라인

줄 끝에서 단어가 분리되지 않도록합니다.

조정 호스트

창 너비가 변경되면 (실행중인 프로세스를 모니터링하거나 정의 된 기간 또는 반복 동안 실행되는 경우) Break-Line의 출력을 다시 씁니다.

애니메이션 호스트

간단한 도트 애니메이션 (실행중인 프로세스를 모니터링하거나 정의 된 지속 시간 또는 반복 동안 실행)

선택 조정 호스트

간단한 선택 메뉴-Choice.exe와 유사하지만 더 좋습니다 (선택한 선택 색상).


이것은 아마도 완벽하고 "스트레스 테스트"일 뿐이며 작동하지 않고 꽤 멋지게 보이는 것 외에 잘못 정렬 된 두 개의 분리기를 찾을 것입니다 (내가 그렇게 말하면).


Imgur에서 미리보기를 찾을 수 있습니다 : https://imgur.com/a/B3FNaej

그리고 기능은 Pastebin에 있습니다 (너무 오래 붙여 넣기) : https://pastebin.com/q2012kxX

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.