본문 바로가기
Windows/PowerShell

PowerShell | Write-Host, Write-Output 차이

by 지혜를 탐구하는 오딘 2022. 7. 7.
728x90
반응형

1. Write-Host

Write-Host
     [[-Object] <Object>]		# 출력할 문자열
     [-NoNewline]			# 마지막에 줄바꿈 제거
     [-Separator <Object>]		# 배열 출력 시, 구분자
     [-ForegroundColor <ConsoleColor>]	# 문자열 색깔
     [-BackgroundColor <ConsoleColor>]	# 배경 색깔

 

예제 보기 👇

더보기
$msg = "Hello PowerShell"

$seperator = "♬"

$arr = "Greetings", "Power", "Shell"

Write-Host $msg `
    -NoNewline `
    -Separator $seperator `
    -ForegroundColor Blue `
    -BackgroundColor White

"================================================"

Write-Host $arr `
    -NoNewline `
    -Separator $seperator `
    -ForegroundColor Blue `
    -BackgroundColor White

 

(결과)

 

 

 

 

2. Write-Output

Write-Output
     [-InputObject] <PSObject[]>  # 버티컬바(파이프라인, "|")으로 보낼 Object 지정
     [-NoEnumerate]		  # Object 가 배열인 경우 버티컬바에 배열 요소가 아닌, 배열 Object 전달

예제 보기👇

더보기
$msg = "Hello PowerShell"

$seperator = "♬"

$arr = "Greetings", "Power", "Shell"

Write-Output -InputObject $msg

"================================================"

Write-Output $arr -NoEnumerate | Out-GridView

 

(결과)

 

 

결론

항목 Write-Host Write-Output
파이프라인 X O
문자열 외 Object 입력 ToString() 으로 호출한 결과 정의된 서식에 따라 표시
개행 제거 가능 항상 개행
꾸미기 O X
다중 입력 한 줄에 하나의 값 배열로 변환, 각 값 개행
배열 입력 한 줄에 하나의 값 각 값을 개행으로 출력
Hash Table 배열 개체 형식 출력 Key Value 출력

(출처: 실무에서 바로 쓰는  PowerShell, 프로그래밍인사이트, 김도균 지음)

화면에 보이기만 할 때에는 Write-Host를 사용하자.

기능이 더 많은 Write-Output 을 더 자주 사용하자.

 

 

 

(참고)

Write-Host - https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/write-host?view=powershell-7.2

Write-Output - https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/write-output?view=powershell-7.2

 

 

 

 

 

 

728x90
반응형

댓글