PowerShell 프롬프트를 다채로운

4414 단어 PowerShell

PowerShell 프롬프트 함수



PowerShell은 프롬프트를 표시할 때 prompt 함수를 실행 중입니다.

붙여야 할 것은

The Prompt function must return an object. As a best practice, return
a string or an object that is formatted as a string.

( Get-Help -Name about_prompt )

즉, Write-Host 혼자서는 안되…

내 프롬프트 함수 작성



전혀 놀랍습니다. 콘솔의 버퍼가 다소와도 보기 쉬워진다고는 생각합니다만….

PowerShell
New-Module -ScriptBlock {
    $c = -1
    function prompt {
        #"PS $($executionContext.SessionState.Path.CurrentLocation)$('>' * ($nestedPromptLevel + 1)) ";
        # .Link
        # https://go.microsoft.com/fwlink/?LinkID=225750
        # .ExternalHelp System.Management.Automation.dll-help.xml
        $script:c = ($c + 1) % 6
        Write-Host -Object "PS" -ForegroundColor ([ConsoleColor] $c + 9) -BackgroundColor ([ConsoleColor] 14 - $c) -NoNewLine
        Write-Host -Object " $($executionContext.SessionState.Path.CurrentLocation)" -ForegroundColor Cyan
        Write-Output -InputObject "$('>' * ($nestedPromptLevel + 1)) "
    }
} | Out-Null

여기서 $script:c 는 모듈에 부딪히는 것으로, 다른 스코프에 영향을 주지 않고 이전의 prompt

실행 예 스크린샷



좋은 웹페이지 즐겨찾기