Write-Output (Polski)

Module: Microsoft.PowerShell.Utility

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.

Składnia

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.

Write-Output wysyła obiekty w dół potoku głównego, znanego również jako „strumień wyjściowy” lub „potok sukcesu”. Aby wysłać obiekty błędów w dół potoku błędów, użyj Write-Error.

To polecenie cmdlet jest zwykle używane w skryptach do wyświetlania ciągów znaków i innych obiektów w konsoli. Jeden z wbudowanych aliasów dla Write-Output to echo i podobny do innych powłok, które używają echo, domyślnym zachowaniem jest wyświetlanie danych wyjściowych na końcu potoku. W PowerShell generalnie nie jest konieczne używanie cmdletu w przypadkach, gdy dane wyjściowe są wyświetlane domyślnie. Na przykład Get-Process | Write-Output jest odpowiednikiem Get-Process. Lub echo "Home directory: $HOME" można napisać "Home directory: $HOME".

Domyślnie Write-Output wylicza przez kolekcje dostarczone do polecenia cmdlet. Jednak Write-Output może być również używany do przekazywania kolekcji w dół potoku jako pojedynczy obiekt z parametremNoEnumerate.

Przykłady

Przykład 1: Pobierz obiekty i zapisz je w konsoli

Pierwsze polecenie pobiera procesy działające na komputerze i zapisuje je w $P zmienna.

Drugie i trzecie polecenie wyświetlają obiekty procesu w $P na konsoli.

Przykład 2: Przekaż dane wyjściowe do innego polecenia cmdlet

To polecenie przekazuje ciąg znaków „test output” do polecenia cmdlet Get-Member, które wyświetla członków klasy System.String, demonstrując, że ciąg został przekazany w potoku.

Przykład 3: pominięcie wyliczenia w danych wyjściowych

To polecenie dodaje parametr NoEnumerate, aby traktować kolekcję lub tablicę jako pojedynczy obiekt w potoku.

Parametry

-InputObject

Określa obiekty do przesłania potokiem. Wprowadź zmienną zawierającą obiekty lub wpisz polecenie lub wyrażenie pobierające obiekty.

Wpisz: PSObject
Stanowisko: 0
Wartość domyślna: Brak
Akceptuj dane wejściowe potoku: True
Akceptuj symbole wieloznaczne: Fałsz
-NoEnumerate

Domyślnie Write-Output cmdlet zawsze wylicza swoje wyjście. Parametry NoEnumerate blokują domyślne zachowanie i uniemożliwiają Write-Output wyliczanie danych wyjściowych. ParametrNoEnumerate nie działa, jeśli polecenie jest umieszczone w nawiasach, ponieważ theparentheses wymusza wyliczenie. Na przykład (Write-Output 1,2,3) nadal wylicza tablicę.

Uwaga

Ten przełącznik działa poprawnie tylko z PowerShell Core 6.2 i nowszymi. W starszych wersjach programu PowerShell Core kolekcja jest nadal wyliczana, nawet przy użyciu tego przełącznika.

Type: SwitchParameter
Position: Named
Wartość domyślna: Brak
Akceptuj dane wejściowe potoku: False
Akceptuj symbole wieloznaczne: Fałsz

Dane wejściowe

PSObject

Możesz potokuj obiekty do Write-Output.

Wyjścia

PSObject

Write-Output zwraca obiekty, które są przesłane jako dane wejściowe.

  • about_Output_Streams
  • about_Redirection
  • Tee-Object
  • Write-Debug
  • Błąd zapisu
  • Host zapisu
  • Informacje-zapisu
  • Postęp zapisu
  • Zapis-pełny
  • Ostrzeżenie przed zapisem

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *