Udostępnij za pośrednictwem


Write-Information

Określa sposób obsługi danych strumienia informacji przez program Windows PowerShell dla polecenia.

Składnia

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

Opis

Polecenie cmdlet Write-Information określa, jak program Windows PowerShell obsługuje dane strumienia informacji dla polecenia.

Program Windows PowerShell 5.0 wprowadza nowy, ustrukturyzowany strumień informacji (numer 6 w strumieniach programu Windows PowerShell), którego można użyć do przesyłania danych strukturalnych między skryptem a jego obiektami wywołującymi (lub środowiskiem hostingu). Write-Information umożliwia dodanie komunikatu informacyjnego do strumienia i określenie sposobu obsługi danych strumienia informacji przez program Windows PowerShell dla polecenia. Strumienie informacji działają również dla PowerShell.Streams, zadań, zaplanowanych zadań i przepływów pracy.

Nuta

Strumień informacji nie jest zgodne ze standardową konwencją prefiksowania komunikatów o nazwie "[Nazwa strumienia]:". Było to przeznaczone do zwięzłości i czystości wizualnej.

Wartość zmiennej preferencji $InformationPreference określa, czy komunikat dostarczony do Write-Information jest wyświetlany w oczekiwanym punkcie operacji skryptu. Ponieważ domyślna wartość tej zmiennej jest SilentlyContinue, domyślnie komunikaty informacyjne nie są wyświetlane. Jeśli nie chcesz zmieniać wartości $InformationPreference, możesz zastąpić jej wartość, dodając InformationAction wspólny parametr do polecenia. Aby uzyskać więcej informacji, zobacz about_Preference_Variables i about_CommonParameters.

Nuta

Począwszy od programu Windows PowerShell 5.0, Write-Host jest otoką Write-Information Umożliwia to użycie Write-Host do emitowania danych wyjściowych do strumienia informacji. Umożliwia to przechwytywanie lub pomijanie danych zapisywanych przy użyciu Write-Host przy zachowaniu zgodności z poprzednimi wersjami. Aby uzyskać więcej informacji, zobacz Write-Host

Write-Information jest również obsługiwanym działaniem przepływu pracy.

Przykłady

Przykład 1. Zapisywanie informacji dla wyników get-

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!

W tym przykładzie zostanie wyświetlony komunikat informacyjny "Got your features!", after running the Get-WindowsFeature command to find all features that have a Name value that starts with 'p'. Ponieważ zmienna $InformationPreference jest nadal ustawiona na wartość domyślną, SilentlyContinue, należy dodać parametr InformationAction, aby zastąpić wartość $InformationPreference i wyświetlić komunikat. Wartość InformationAction to Kontynuuj, co oznacza, że komunikat jest wyświetlany, ale skrypt lub polecenie będzie kontynuowane, jeśli jeszcze nie zostało zakończone.

Przykład 2. Zapisywanie informacji i tagowanie ich

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.

W tym przykładzie użyjesz Write-Information, aby poinformować użytkowników, że będą musieli uruchomić inne polecenie po zakończeniu uruchamiania bieżącego polecenia. W przykładzie dodano tag Instrukcje do komunikatu informacyjnego. Po uruchomieniu tego polecenia, jeśli przeszukujesz strumień informacji pod kątem komunikatów otagowanych Instrukcje, komunikat określony tutaj będzie jednym z wyników.

Przykład 3. Zapisywanie informacji w pliku

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

W tym przykładzie przekierowujesz strumień informacji w funkcji do pliku, Info.txt, przy użyciu kodu 6>. Po otwarciu pliku Info.txt zobaczysz tekst "Here you go".

Parametry

-MessageData

Określa komunikat informacyjny, który ma być wyświetlany użytkownikom podczas uruchamiania skryptu lub polecenia. Aby uzyskać najlepsze wyniki, należy ująć komunikat informacyjny w cudzysłów. Przykładem jest "Test ukończony".

Typ:Object
Aliasy:Msg
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Tags

Określa prosty ciąg, którego można użyć do sortowania i filtrowania komunikatów dodanych do strumienia informacji za pomocą Write-Information. Ten parametr działa podobnie do parametru Tags w New-ModuleManifest.

Typ:String[]
Position:1
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

None

Write-Information nie akceptuje danych wejściowych potokowych.

Dane wyjściowe

InformationRecord