PowerTip: Write PowerShell Output in Color Without Using Write-Host

PowerTip: Write PowerShell Output in Color Without Using Write-Host

  • Comments 1
  • Likes

Summary: Write colorized output to the Windows PowerShell console without using the Write-Host cmdlet.

Hey, Scripting Guy! Question How can you write output to the Windows PowerShell console without using the Write-Host cmdlet?

Hey, Scripting Guy! Answer Set ForegroundColor to a different color by using $host.Ui.RawUi, and then use the Write-Output cmdlet to write the output. When you are finished, set the ForegroundColor back to its original color.

PS C:\> $t = $host.ui.RawUI.ForegroundColor

PS C:\> $host.ui.RawUI.ForegroundColor = "DarkGreen"

PS C:\> Write-Output "this is green output"

this is green output

PS C:\> $host.ui.RawUI.ForegroundColor = $t

PS C:\>

Your comment has been posted.   Close
Thank you, your comment requires moderation so it may take a while to appear.   Close
Leave a Comment
  • In what use cases would we want to do this instead of Write-Host ?

    Thanks