Write-Information
Especifica como o Windows PowerShell lida com dados de fluxo de informações para um comando.
Sintaxe
Write-Information
[-MessageData] <Object>
[[-Tags] <String[]>]
[<CommonParameters>]
Description
O cmdlet Write-Information
especifica como o Windows PowerShell lida com dados de fluxo de informações para um comando.
O Windows PowerShell 5.0 apresenta um novo fluxo de informações estruturados (número 6 em fluxos do Windows PowerShell) que você pode usar para transmitir dados estruturados entre um script e seus chamadores (ou ambiente de hospedagem).
Write-Information
permite adicionar uma mensagem informativa ao fluxo e especificar como o Windows PowerShell lida com dados de fluxo de informações para um comando. Os fluxos de informações também funcionam para PowerShell.Streams
, trabalhos, trabalhos agendados e fluxos de trabalho.
Nota
O fluxo de informações não segue a convenção padrão de prefixar suas mensagens com "[Nome do Fluxo]:". Isso foi destinado à brevidade e limpeza visual.
O valor da variável de preferência $InformationPreference
determina se a mensagem que você fornece para Write-Information
é exibida no ponto esperado na operação de um script.
Como o valor padrão dessa variável é SilentlyContinue
, por padrão, as mensagens informativas não são mostradas.
Se você não quiser alterar o valor de $InformationPreference
, poderá substituir seu valor adicionando o parâmetro InformationAction
comum ao seu comando.
Para obter mais informações, consulte about_Preference_Variables e about_CommonParameters.
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.
para obter mais informações, consulte write-host
Write-Information
também é uma atividade de fluxo de trabalho com suporte.
Exemplos
Exemplo 1: gravar informações para obter resultados
Get-WindowsFeature -Name p*; Write-Information -MessageData "Got your features!" -InformationAction Continue
Display Name Name Install State
------------ ---- -------------
[ ] Print and Document Services Print-Services Available
[ ] Print Server Print-Server Available
[ ] Distributed Scan Server Print-Scan-Server Available
[ ] Internet Printing Print-Internet Available
[ ] LPD Service Print-LPD-Service Available
[ ] Peer Name Resolution Protocol PNRP Available
[X] Windows PowerShell PowerShellRoot Installed
[X] Windows PowerShell 5.0 PowerShell Installed
[ ] Windows PowerShell 2.0 Engine PowerShell-V2 Removed
[X] Windows PowerShell ISE PowerShell-ISE Installed
Got your features!
Neste exemplo, você mostra uma mensagem informativa, "Obtive seus recursos!", depois de executar o comando Get-WindowsFeature
para localizar todos os recursos que têm um valor Name que começa com 'p'.
Como a variável $InformationPreference
ainda está definida como padrão, SilentlyContinue
, adicione o parâmetro InformationAction
para substituir o valor $InformationPreference
e mostre a mensagem.
O valor InformationAction
é Continuar, o que significa que sua mensagem é mostrada, mas o script ou o comando continua, se ainda não tiver sido concluído.
Exemplo 2: gravar informações e marcá-la
Get-WindowsFeature -Name p*; Write-Information -MessageData "To filter your results for PowerShell, pipe your results to the Where-Object cmdlet." -Tags "Instructions" -InformationAction Continue
Display Name Name Install State
------------ ---- -------------
[ ] Print and Document Services Print-Services Available
[ ] Print Server Print-Server Available
[ ] Distributed Scan Server Print-Scan-Server Available
[ ] Internet Printing Print-Internet Available
[ ] LPD Service Print-LPD-Service Available
[ ] Peer Name Resolution Protocol PNRP Available
[X] Windows PowerShell PowerShellRoot Installed
[X] Windows PowerShell 5.0 PowerShell Installed
[ ] Windows PowerShell 2.0 Engine PowerShell-V2 Removed
[X] Windows PowerShell ISE PowerShell-ISE Installed
To filter your results for PowerShell, pipe your results to the Where-Object cmdlet.
Neste exemplo, você usa Write-Information
para informar aos usuários que eles precisarão executar outro comando depois que terminarem de executar o comando atual.
O exemplo adiciona as instruções de marca à mensagem informativa.
Depois de executar esse comando, se você pesquisar no fluxo de informações instruções marcadas, a mensagem especificada aqui estará entre os resultados.
Exemplo 3: gravar informações em um arquivo
function Test-Info
{
Get-Process P*
Write-Information "Here you go"
}
Test-Info 6> Info.txt
Neste exemplo, você redireciona o fluxo de informações na função para um arquivo, Info.txt, usando o código 6>. Ao abrir o arquivo Info.txt, você verá o texto".
Parâmetros
-MessageData
Especifica uma mensagem informativa que você deseja exibir aos usuários enquanto eles executam um script ou comando. Para obter melhores resultados, coloque a mensagem informativa entre aspas. Um exemplo é "Teste concluído".
Tipo: | Object |
Aliases: | Msg |
Cargo: | 0 |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Tags
Especifica uma cadeia de caracteres simples que você pode usar para classificar e filtrar mensagens que você adicionou ao fluxo de informações com Write-Information
.
Esse parâmetro funciona de forma semelhante ao parâmetro marcas de
Tipo: | String[] |
Cargo: | 1 |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
Entradas
None
Write-Information
não aceita entrada encanada.