Summary: Write colorized output to the Windows PowerShell console without using the Write-Host cmdlet.
How can you write output to the Windows PowerShell console without using the Write-Host cmdlet?
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
Originally Written by: The Scripting Guys at http://blogs.technet.com/b/heyscriptingguy/archive/2012/10/11/powertip-write-powershell-output-in-color-without-using-write-host.aspx