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 finalidade principal do cmdlet Write-Host
é produzir saída somente para(host)-display, como imprimir texto colorido, como ao solicitar ao usuário uma entrada em conjunto com de Host de Leitura.
Você pode especificar a cor do texto usando o parâmetro ForegroundColor
e especificar a cor da tela de fundo usando o parâmetro BackgroundColor
. O parâmetro Separador permite que você especifique uma cadeia de caracteres a ser usada para separar objetos exibidos. O resultado específico depende do programa que está hospedando o PowerShell.
Nota
A partir do Windows PowerShell 5.0, Write-Host
é um wrapper para Write-Information
Isso permite que você use Write-Host
para emitir a saída para o fluxo de informações. Isso permite que o capturar ou de supressão de dados gravados usando Write-Host
preservando a compatibilidade com versões anteriores.
A variável de preferência $InformationPreference
e InformationAction
parâmetro comum não afetam Write-Host
mensagens. A exceção a essa regra é -InformationAction Ignore
, que suprime efetivamente Write-Host
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 parâmetro NoNewline
.
Uma segunda cadeia de caracteres é escrita, 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 par de dois a doze. O parâmetro separador de
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 par de dois a doze. Ele usa o parâmetro ForegroundColor
para gerar texto verde escuro e o parâmetro BackgroundColor
para exibir um plano de fundo branco.
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 "Vermelho em texto em branco". O texto é vermelho, conforme definido pelo parâmetro ForegroundColor
. A tela de fundo é branca, conforme definido pelo parâmetro BackgroundColor
.
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 cmdlet Write-Host
. O primeiro usa o parâmetro InformationAction
com o valor Ignore
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 $null
e, assim, suprime-o. Para obter mais informações, consulte about_Output_Streams.
Parâmetros
-BackgroundColor
Especifica a cor da tela de fundo. Não há nenhum padrão. Os valores aceitáveis para este 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 este 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 cadeias de caracteres 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 cadeia de caracteres separador 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
Você pode canalizar objetos a serem gravados no host para este 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 este cmdlet envia 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 de
. 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}
imprimiráSystem.Collections.DictionaryEntry System.Collections.DictionaryEntry
no host.