Write-Host

Writes customized output to a host.
Write-Host [[-Object] [<Object>]] [-BackgroundColor {Black | DarkBlue | DarkGreen | DarkCyan | DarkRed |DarkMagenta | DarkYellow | Gray | DarkGray | Blue | Green | Cyan | Red | Magenta | Yellow | White}][-ForegroundColor {Black | DarkBlue | DarkGreen | DarkCyan | DarkRed | DarkMagenta | DarkYellow | Gray | DarkGray| Blue | Green | Cyan | Red | Magenta | Yellow | White}] [-NoNewline] [-Separator [<Object>]] [<CommonParameters>]

The Write-Host cmdlet customizes output. You can specify the color of text by using the ForegroundColor parameter, and you can specify the background color by using the BackgroundColor parameter. The Separator parameter lets you specify a string to use to separate displayed objects. The particular result depends on the program that is hosting Windows PowerShell.

Parameters
-BackgroundColor [<ConsoleColor>]

  • Default value is None

Specifies the background color. There is no default. The acceptable values for this parameter are:

— Black– DarkBlue– DarkGreen– DarkCyan– DarkRed– DarkMagenta– DarkYellow– Gray– DarkGray– Blue– Green– Cyan– Red– Magenta– Yellow– White

-ForegroundColor [<ConsoleColor>]

  • Default value is None

Specifies the text color. There is no default. The acceptable values for this parameter are:

— Black– DarkBlue– DarkGreen– DarkCyan– DarkRed– DarkMagenta– DarkYellow– Gray– DarkGray– Blue– Green– Cyan– Red– Magenta– Yellow– White

-NoNewline [<SwitchParameter>]

  • Default value is None

Specifies that the content displayed in the console does not end with a newline character.

-Object [<Object>]

  • Default value is None
  • Accepts pipeline input ByValue

Specifies objects to display in the console.

-Separator [<Object>]

  • Default value is None

Specifies a separator string to the output between objects displayed on the console.

<CommonParameters>

This cmdlet supports the common parameters: Verbose, Debug,ErrorAction, ErrorVariable, WarningAction, WarningVariable,OutBuffer, PipelineVariable, and OutVariable.

Inputs

System.Object

You can pipe objects to be written to the host.

Outputs

None

Write-Host sends the objects to the host. It does not return any objects. However, the host might display the objects that Write-Host sends to it.

Examples
  1. Write to the console without adding a new line:
    PS C:> Write-Host "no newline test " -NoNewline
    no newline test PS C:>
    

    This command displays the input to the console, but because of the NoNewline parameter, the output is followed directly by the prompt.

  2. Write to the console and include a separator:
    PS C:> Write-Host (2,4,6,8,10,12) -Separator ", +2= "
    2, +2= 4, +2= 6, +2= 8, +2= 10, +2= 12
    

    This command displays the even numbers from 2 through 12. The Separator parameter is used to add the string “, +2= (comma, space, +, 2, =, space)”.

  3. Write with different text and background colors:
    PS C:> Write-Host (2,4,6,8,10,12) -Separator ", -> " -ForegroundColor DarkGreen -BackgroundColor white
    

    This command displays the even numbers from 2 through 12. It uses the ForegroundColor parameter to output dark green text and the BackgroundColor parameter to display a white background.

  4. Write with different text and background colors:
    PS C:> Write-Host "Red on white text." -ForegroundColor red -BackgroundColor white
    Red on white text.
    

    This command displays the string “Red on white text.” The text is red, as defined by the ForegroundColor parameter. The background is white, as defined by the BackgroundColor parameter.

Related Links

Out-Host
Write-Debug
Write-Error
Write-Output
Write-Progress
Write-Verbose
Write-Warning