Compartilhar via


Write-Host

Grava a saída personalizada em um host.

Sintaxe

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

Description

A Write-Host principal finalidade do cmdlet é produzir uma saída somente para exibição (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 Write-Output ou saída implícita.

Você pode especificar a cor do texto usando o ForegroundColor parâmetro e pode 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 permite que você use Write-Host para emitir saída para o fluxo de informações. Isso permite a captura ou supressão de dados gravados usandoWrite-Host, preservando a compatibilidade com versões anteriores.

A variável de preferência e InformationAction o $InformationPreference parâmetro comum não afetam as Write-Host mensagens. A exceção a essa regra é -InformationAction Ignore, que efetivamente suprime a Write-Host saída. (ver "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

Este comando exibe a string 'no newline test' com o NoNewline parâmetro.

Uma segunda string é escrita, mas acaba na mesma linha que a primeira devido à ausência de uma nova linha separando as strings.

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

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

Exemplo 3: Escreva 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

Este 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 um plano de fundo branco.

Exemplo 4: Escreva 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 no branco". O texto é vermelho, conforme definido pelo ForegroundColor parâmetro. O plano de fundo é branco, conforme definido pelo BackgroundColor parâmetro.

Exemplo 5: suprimir a saída do 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 $null variável e, assim, o suprime. Para obter mais informações, consulte about_Output_Streams.

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:

  • Black
  • DarkBlue
  • DarkGreen
  • DarkCyan
  • DarkRed
  • DarkMagenta
  • DarkYellow
  • Gray
  • DarkGray
  • Blue
  • Green
  • Cyan
  • Red
  • Magenta
  • Yellow
  • White
Tipo:ConsoleColor
Valores aceitos:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ForegroundColor

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

  • Black
  • DarkBlue
  • DarkGreen
  • DarkCyan
  • DarkRed
  • DarkMagenta
  • DarkYellow
  • Gray
  • DarkGray
  • Blue
  • Green
  • Cyan
  • Red
  • Magenta
  • Yellow
  • White
Tipo:ConsoleColor
Valores aceitos:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga: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 nova linha é inserido entre as strings de saída. Nenhuma nova linha é adicionada após a última cadeia de caracteres de saída.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Object

Objetos a serem exibidos no host.

Tipo:Object
Aliases:Msg, Message
Cargo:0
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-Separator

Especifica uma sequência separadora a ser inserida entre os objetos exibidos pelo host.

Tipo:Object
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

Object

Você pode canalizar objetos a serem gravados no host para esse cmdlet.

Saídas

None

Esse cmdlet não retorna nenhuma saída. Ele envia os objetos para o host. O host exibe os objetos que esse cmdlet envia para ele.

Observações

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

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