Write-Information
Gibt an, wie Windows PowerShell Informationsstreamdaten für einen Befehl behandelt.
Syntax
Write-Information
[-MessageData] <Object>
[[-Tags] <String[]>]
[<CommonParameters>]
Beschreibung
Das Write-Information
Cmdlet gibt an, wie Windows PowerShell Informationsstreamdaten für einen Befehl behandelt.
Windows PowerShell 5.0 wird ein neuer, strukturierter Informationsstream (Nummer 6 in Windows PowerShell Streams) eingeführt, mit dem Sie strukturierte Daten zwischen einem Skript und seinen Aufrufenden (oder der Hostingumgebung) übertragen können.
Write-Information
mit können Sie dem Stream eine Informationsmeldung hinzufügen und angeben, wie Windows PowerShell Informationsstreamdaten für einen Befehl behandelt. Informationsstreams funktionieren auch für PowerShell.Streams
, Aufträge, geplante Aufträge und Workflows.
Hinweis
Der Informationsstream folgt nicht der Standardkonvention, seinen Nachrichten "[Stream Name]:" voran zu stellen. Dies war aus Platzgründen und visueller Sauberkeit gedacht.
Der $InformationPreference
Wert der Einstellungsvariablen bestimmt, ob die Nachricht, für die Sie angeben, Write-Information
am erwarteten Punkt im Vorgang eines Skripts angezeigt wird.
Da der Standardwert dieser Variablen standardmäßig ist SilentlyContinue
, werden keine Informationsmeldungen angezeigt.
Wenn Sie den Wert von nicht ändern möchten, können Sie den Wert überschreiben $InformationPreference
, indem Sie dem Befehl den InformationAction
allgemeinen Parameter hinzufügen.
Weitere Informationen finden Sie unter about_Preference_Variables und about_CommonParameters.
Hinweis
Ab Windows PowerShell 5.0 Write-Host
ist ein Wrapper für Write-Information
This ermöglicht es Ihnen, Write-Host
die Ausgabe an den Informationsstream auszugeben.
Dies ermöglicht die Erfassung oder Unterdrückung von mit geschriebenen Write-Host
Daten, während die Abwärtskompatibilität erhalten bleibt.
weitere Informationen finden Sie unter Write-Host.
Write-Information
ist auch eine unterstützte Workflowaktivität.
Beispiele
Beispiel 1: Schreiben von Informationen für Get-Ergebnisse
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!
In diesem Beispiel zeigen Sie die Informationsmeldung "Got your features!" an, nachdem Sie den Get-WindowsFeature
Befehl ausgeführt haben, um alle Features zu finden, die über einen Name-Wert verfügen, der mit "p" beginnt.
Da die $InformationPreference
Variable weiterhin auf den Standardwert festgelegt ist, SilentlyContinue
fügen Sie den InformationAction
Parameter hinzu, um den $InformationPreference
Wert zu überschreiben, und zeigen die Meldung an.
Der InformationAction
Wert ist Weiter. Dies bedeutet, dass Ihre Nachricht angezeigt wird, aber das Skript oder der Befehl wird fortgesetzt, wenn sie noch nicht abgeschlossen ist.
Beispiel 2: Schreiben und Markieren von Informationen
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.
In diesem Beispiel verwenden Write-Information
Sie, um Benutzern mitzuteilen, dass sie einen anderen Befehl ausführen müssen, nachdem sie den aktuellen Befehl ausgeführt haben.
Im Beispiel wird der Informationsmeldung das Tag Anweisungen hinzugefügt.
Wenn Sie nach dem Ausführen dieses Befehls den Informationsstream nach Nachrichten durchsuchen, die mit Anweisungen gekennzeichnet sind, gehört die hier angegebene Meldung zu den Ergebnissen.
Beispiel 3: Schreiben von Informationen in eine Datei
function Test-Info
{
Get-Process P*
Write-Information "Here you go"
}
Test-Info 6> Info.txt
In diesem Beispiel leiten Sie den Informationsstream in der Funktion mithilfe des Codes 6> in eine Datei um, Info.txt. Wenn Sie die Info.txt-Datei öffnen, wird der Text "Hier gehen Sie los" angezeigt.
Parameter
-MessageData
Gibt eine Informationsmeldung an, die Benutzern beim Ausführen eines Skripts oder Befehls angezeigt werden soll. Um optimale Ergebnisse zu erzielen, schließen Sie die Informationsmeldung in Anführungszeichen ein. Ein Beispiel ist "Test abgeschlossen".
Type: | Object |
Aliases: | Msg |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Tags
Gibt eine einfache Zeichenfolge an, die Sie zum Sortieren und Filtern von Nachrichten verwenden können, die Sie dem Informationsstream mit Write-Information
hinzugefügt haben.
Dieser Parameter funktioniert ähnlich wie der Tags-Parameter in New-ModuleManifest
.
Type: | String[] |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Eingaben
None
Write-Information
akzeptiert keine Überleitungseingaben.