Write-Host

Grava a saída personalizada em um host.

Syntax

Write-Host
     [[-Object] <Object>]
     [-NoNewline]
     [-Separator <Object>]
     [-ForegroundColor <ConsoleColor>]
     [-BackgroundColor <ConsoleColor>]
     [<CommonParameters>]

Description

A Write-Host principal finalidade do cmdlet é produzir somente exibição for-(host), como imprimir texto colorido, como ao solicitar a entrada do usuário em conjunto com o Read-Host. Write-Host usa o método ToString() para gravar a saída. Por outro lado, para gerar dados para o pipeline, use a saída de gravação ou implícita.

Você pode especificar a cor do texto usando o ForegroundColor parâmetro e especificar a cor da tela de fundo usando o BackgroundColor parâmetro. O parâmetro separador permite que você especifique uma cadeia de caracteres a ser usada para separar os objetos exibidos. O resultado específico depende do programa que está hospedando o PowerShell.

Observação

A partir do Windows PowerShell 5.0, Write-Host é um wrapper para Write-Information isso que permite que você use Write-Host para emitir a saída para o fluxo de informações. Isso permite a captura ou supressão de dados gravados usando Write-Host a preservação da compatibilidade com versões anteriores.

A $InformationPreference variável de preferência e InformationAction o parâmetro comum não afetam as Write-Host mensagens. A exceção a essa regra é -InformationAction Ignore, que suprime Write-Host efetivamente a saída. (consulte "Exemplo 5")

Exemplos

Exemplo 1: gravar no console sem adicionar uma nova linha

Write-Host "no newline test " -NoNewline
Write-Host "second string"

no newline test second string

Esse comando exibe a cadeia de caracteres "nenhum teste de nova linha" com o NoNewline parâmetro.

Uma segunda cadeia de caracteres é gravada, mas acaba na mesma linha que a primeira devido à ausência de uma nova linha separando as cadeias de caracteres.

Exemplo 2: gravar no console e incluir um separador

Write-Host (2,4,6,8,10,12) -Separator ", +2= "

2, +2= 4, +2= 6, +2= 8, +2= 10, +2= 12

Esse comando exibe os números pares de dois a doze. O parâmetro Separador é usado para adicionar a cadeia , +2= de caracteres (vírgula, espaço, +2, , =espaço).

Exemplo 3: Gravar com diferentes cores de texto e plano de fundo

Write-Host (2,4,6,8,10,12) -Separator ", -> " -ForegroundColor DarkGreen -BackgroundColor White

2, -> 4, -> 6, -> 8, -> 10, -> 12

Esse comando exibe os números pares de dois a doze. Ele usa o ForegroundColor parâmetro para gerar texto verde escuro e o BackgroundColor parâmetro para exibir uma tela de fundo branca.

Exemplo 4: Gravar com diferentes cores de texto e plano de fundo

Write-Host "Red on white text." -ForegroundColor red -BackgroundColor white

Red on white text.

Esse comando exibe a cadeia de caracteres "Texto vermelho em branco". O texto é vermelho, conforme definido pelo ForegroundColor parâmetro. A tela de fundo é branca, conforme definido pelo BackgroundColor parâmetro.

Exemplo 5: suprimir a saída de Write-Host

# The following two statements can be used to effectively suppress output from Write-Host
Write-Host "I won't print" -InformationAction Ignore
Write-Host "I won't print" 6>$null

Esses comandos suprimem efetivamente a saída do Write-Host cmdlet. O primeiro usa o InformationAction parâmetro com o Ignore Valor para suprimir a saída para o fluxo de informações. O segundo exemplo redireciona o fluxo de informações do comando para a variável e, portanto, suprime-o $null .

Parâmetros

-BackgroundColor

Especifica a cor do plano de fundo. Não há nenhum padrão. Os valores aceitáveis para esse parâmetro são:

  • Preto
  • Darkblue
  • DarkGreen
  • Darkcyan
  • Darkred
  • Darkmagenta
  • DarkYellow
  • Cinza
  • Darkgray
  • Azul
  • Verde
  • Ciano
  • Vermelho
  • Magenta
  • Amarelo
  • Branco
Type:ConsoleColor
Accepted values:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ForegroundColor

Especifica a cor do texto. Não há nenhum padrão. Os valores aceitáveis para esse parâmetro são:

  • Preto
  • Darkblue
  • DarkGreen
  • Darkcyan
  • Darkred
  • Darkmagenta
  • DarkYellow
  • Cinza
  • Darkgray
  • Azul
  • Verde
  • Ciano
  • Vermelho
  • Magenta
  • Amarelo
  • Branco
Type:ConsoleColor
Accepted values:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-NoNewline

As representações de cadeia de caracteres dos objetos de entrada são concatenadas para formar a saída. Nenhum espaço ou linhas novas são inseridos entre as cadeias de caracteres de saída. Nenhuma nova linha é adicionada após a última cadeia de caracteres de saída.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Object

Objetos a serem exibidos no host.

Type:Object
Aliases:Msg, Message
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Separator

Especifica uma cadeia de caracteres separador a ser inserida entre objetos exibidos pelo host.

Type:Object
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entradas

Object

É possível redirecionar objetos a serem gravados no host.

Saídas

None

Write-Host envia os objetos para o host. Ele não retorna nenhum objeto. No entanto, o host exibe os objetos que Write-Host são enviados para ele.

Observações

  • Ao gravar uma coleção no host, os elementos da coleção são impressos na mesma linha separada por um único espaço. Isso pode ser substituído com o parâmetro Separador .

  • Tipos de dados não primitivos, como objetos com propriedades, podem causar resultados inesperados e não fornecer uma saída significativa. Por exemplo, Write-Host @{a = 1; b = 2} será impresso System.Collections.DictionaryEntry System.Collections.DictionaryEntry no host.