Partager via


Write-Information

Spécifie comment Windows PowerShell gère les données de flux d’informations pour une commande.

Syntaxe

Write-Information
     [-MessageData] <Object>
     [[-Tags] <String[]>]
     [<CommonParameters>]

Description

L’applet de commande Write-Information spécifie comment Windows PowerShell gère les données de flux d’informations d’une commande.

Windows PowerShell 5.0 introduit un nouveau flux d’informations structurés (numéro 6 dans les flux Windows PowerShell) que vous pouvez utiliser pour transmettre des données structurées entre un script et ses appelants (ou environnement d’hébergement). Write-Information vous permet d’ajouter un message d’information au flux et de spécifier comment Windows PowerShell gère les données de flux d’informations pour une commande. Les flux d’informations fonctionnent également pour PowerShell.Streams, les travaux, les travaux planifiés et les flux de travail.

Note

Le flux d’informations ne suit pas la convention standard de préfixe de ses messages avec « [Nom du flux] : ». Cela a été destiné à la concision et à la propreté visuelle.

La valeur de la variable de préférence $InformationPreference détermine si le message que vous fournissez à Write-Information s’affiche au point attendu dans l’opération d’un script. Étant donné que la valeur par défaut de cette variable est SilentlyContinue, par défaut, les messages d’information ne sont pas affichés. Si vous ne souhaitez pas modifier la valeur de $InformationPreference, vous pouvez remplacer sa valeur en ajoutant le paramètre commun InformationAction à votre commande. Pour plus d’informations, consultez about_Preference_Variables et about_CommonParameters.

Note

À compter de Windows PowerShell 5.0, Write-Host est un wrapper pour Write-Information Cela vous permet d’utiliser Write-Host pour émettre la sortie vers le flux d’informations. Cela permet la capture ou la suppression de données écrites à l’aide de Write-Host tout en préservant la compatibilité descendante. Pour plus d’informations, consultez d’hôte d’écriture

Write-Information est également une activité de flux de travail prise en charge.

Exemples

Exemple 1 : Écrire des informations pour obtenir les résultats

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!

Dans cet exemple, vous affichez un message d’information, « Vous avez obtenu vos fonctionnalités ! », après avoir exécuté la commande Get-WindowsFeature pour rechercher toutes les fonctionnalités dont la valeur Nom commence par « p ». Étant donné que la variable $InformationPreference est toujours définie sur sa valeur par défaut, SilentlyContinue, vous ajoutez le paramètre InformationAction pour remplacer la valeur $InformationPreference et afficher le message. La valeur InformationAction est Continuer, ce qui signifie que votre message est affiché, mais que le script ou la commande continue, s’il n’est pas encore terminé.

Exemple 2 : Écrire des informations et les étiqueter

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.

Dans cet exemple, vous utilisez Write-Information pour informer les utilisateurs qu’ils devront exécuter une autre commande une fois qu’ils ont terminé d’exécuter la commande active. L’exemple ajoute les instructions de balise au message d’information. Après avoir exécuté cette commande, si vous recherchez dans le flux d’informations les messages étiquetés Instructions, le message spécifié ici figure parmi les résultats.

Exemple 3 : Écrire des informations dans un fichier

function Test-Info
{
    Get-Process P*
    Write-Information "Here you go"
}
Test-Info 6> Info.txt

Dans cet exemple, vous redirigez le flux d’informations dans la fonction vers un fichier, Info.txt, à l’aide du code 6>. Lorsque vous ouvrez le fichier Info.txt, vous voyez le texte « Ici vous allez ».

Paramètres

-MessageData

Spécifie un message d’information que vous souhaitez afficher aux utilisateurs lors de l’exécution d’un script ou d’une commande. Pour obtenir de meilleurs résultats, placez le message d’information entre guillemets. Par exemple, « Test terminé ».

Type:Object
Alias:Msg
Position:0
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Tags

Spécifie une chaîne simple que vous pouvez utiliser pour trier et filtrer les messages que vous avez ajoutés au flux d’informations avec Write-Information. Ce paramètre fonctionne de la même façon que le paramètre balises dans .

Type:String[]
Position:1
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

None

Write-Information n’accepte pas d’entrée redirigée.

Sorties

InformationRecord