본문 바로가기
ITC/Windows Commands

PowerShell에서 Write-Host와 Write-Output의 차이점

by Un光 2022. 4. 13.
728x90
반응형

Write-Host와 Wirte-Output에는 두 가지 주요 차이점이 있습니다.

a) 출력 리디렉션을 원하면 Write-Output을 사용하십시오.
b) 쉼표로 구분된 항목을 출력하려면 Write-Host는 한 줄로 출력하고 Write-Output은 여러 줄로 출력합니다.

Function Test-Output-0
{
    Write-Host "Hello World" -ForegroundColor White -BackgroundColor Green
}

Function Test-Output-1
{
    Write-Output "Hello World"
}

Function Receive-Output
{
    Process
    {
    Write-Host $_ -ForegroundColor Yellow -BackgroundColor Black
    }
}

Test-Output-0 | Receive-Output
Test-Output-1 | Receive-Output
Test-Output-1



첫 번째 출력은 녹색 배경에 흰색이며 출력 스티어링은 적용되지 않습니다.

두 번째 출력은 검정색 배경에 노란색이며 출력 조정이 적용됩니다.

세 번째 출력은 콘솔 기본 색 구성표를 사용합니다.

--------------------------------------------------------------------------
Write-Host "One", "Two", "Three"

Write-Output "One", "Two", "Three"
--------------------------------------------------------------------------

첫 번째는 "One Two Three"를 한 줄로 출력합니다.

두 번째는 세 줄에 "One", "Two", "Three"를 차례로 출력합니다.

--------------------------------------------------------------------------
Write-Host "key=" + "value"

Write-Output "key=" + "value"

Write-Host( "key=" + "value" )

[Console]::WriteLine( "key=" + "value" )
--------------------------------------------------------------------------

첫 번째는 "key= + value"를 한 줄로 출력합니다.

두 번째는 "key=", "+", "value"를 세 줄에 차례로 출력합니다.

세 번째는 "key=value"를 한 줄로 출력합니다. 괄호는 먼저 문자열의 + 연산을 수행한 다음
Write-Host에 전달된 매개변수입니다.

네 번째는 "key=value"를 한 줄로 출력합니다.

반응형