Udostępnij za pośrednictwem


Write-Output

Wysyła określone obiekty do następnego polecenia w potoku. Jeśli polecenie jest ostatnim poleceniem w potoku, obiekty są wyświetlane w konsoli programu .

Składnia

Write-Output
     [-InputObject] <PSObject[]>
     [-NoEnumerate]
     [<CommonParameters>]

Opis

Polecenie cmdlet Write-Output wysyła określony obiekt w dół potoku do następnego polecenia. Jeśli polecenie jest ostatnim poleceniem w potoku, obiekt jest wyświetlany w konsoli programu .

write-output wysyła obiekty w dół potoku podstawowego, nazywane również "strumieniem wyjściowym" lub "potokiem powodzenia". Aby wysłać obiekty błędów w potoku błędów, użyj polecenia Write-Error.

To polecenie cmdlet jest zwykle używane w skryptach do wyświetlania ciągów i innych obiektów w konsoli programu . Jednak ponieważ domyślne zachowanie polega na wyświetlaniu obiektów na końcu potoku, zazwyczaj nie jest konieczne użycie polecenia cmdlet . Na przykład Get-Process | Write-Output jest odpowiednikiem Get-Process.

Przykłady

Przykład 1. Pobieranie obiektów i zapisywanie ich w konsoli

PS C:\> $P = Get-Process
PS C:\> Write-Output $P
PS C:\> $P

Pierwsze polecenie pobiera procesy uruchomione na komputerze i przechowuje je w zmiennej $P.

Drugie i trzecie polecenia wyświetlają obiekty procesu w $P w konsoli programu .

Przykład 2. Przekazywanie danych wyjściowych do innego polecenia cmdlet

PS C:\> Write-Output "test output" | Get-Member

To polecenie potokuje ciąg "test output" do polecenia cmdlet Get-Member, które wyświetla elementy członkowskie klasy System.String, pokazując, że ciąg został przekazany wzdłuż potoku.

Przykład 3. Pomijanie wyliczenia w danych wyjściowych

PS C:\> Write-Output @(1,2,3) | measure

Count    : 3
...

PS C:\> Write-Output @(1,2,3) -NoEnumerate | measure

Count    : 1

To polecenie dodaje parametr NoEnumerate w celu traktowania kolekcji lub tablicy jako pojedynczego obiektu za pośrednictwem potoku.

Parametry

-InputObject

Określa obiekty do wysłania potoku. Wprowadź zmienną zawierającą obiekty lub wpisz polecenie lub wyrażenie, które pobiera obiekty.

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

-NoEnumerate

Domyślnie polecenie cmdlet write-output zawsze wylicza dane wyjściowe. Parametr NoEnumerate pomija domyślne zachowanie i uniemożliwia zapisu i wyjścia z wyliczania danych wyjściowych. Parametr NoEnumerate nie ma wpływu na kolekcje, które zostały utworzone przez zawijanie poleceń w nawiasach, ponieważ nawiasy wymuszają wyliczenie.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

PSObject

Obiekty można przesyłać potokowo do write-output.

Dane wyjściowe

PSObject

write-output zwraca obiekty przesyłane jako dane wejściowe.