Write-Output

Skriver de angivna objekten till pipelinen.

Syntax

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

Description

Skriver de angivna objekten till pipelinen. Om Write-Output är det sista kommandot i pipelinen visas objekten i konsolen.

Write-Output skickar objekt till den primära pipelinen, även kallat lyckad dataström. Om du vill skicka felobjekt till felströmmen använder du Write-Error.

Den här cmdleten används vanligtvis i skript för att visa strängar och andra objekt i konsolen. Ett av de inbyggda aliasen för Write-Output är echo och liknar andra gränssnitt som använder echo. Standardbeteendet är att visa utdata i slutet av en pipeline. I PowerShell är det vanligtvis inte nödvändigt att använda cmdleten i instanser där utdata visas som standard. Get-Process | Write-Output motsvarar till exempel Get-Process. Eller kan echo "Home directory: $HOME" skrivas, "Home directory: $HOME".

Som standard Write-Output räknas objekt upp i en samling. Men Write-Output kan också skicka samlingar nedåt i pipelinen som ett enskilt objekt med parametern NoEnumerate .

Exempel

Exempel 1: Hämta objekt och skriv dem till konsolen

I det här exemplet lagras resultatet av cmdleten Get-Process i variabeln $P . Cmdleten Write-Output visar processobjekten i $P konsolen.

$P = Get-Process
Write-Output $P

Exempel 2: Skicka utdata till en annan cmdlet

Det här kommandot skickar strängen "testutdata" till cmdleten Get-Member , som visar medlemmarna i klassen System.String , vilket visar att strängen skickades längs pipelinen.

Write-Output "test output" | Get-Member

Exempel 3: Utelämna uppräkning i utdata

Det här kommandot lägger till parametern NoEnumerate för att behandla en samling eller matris som ett enda objekt via pipelinen.

Write-Output 1,2,3 | Measure-Object

Count    : 3
...

Write-Output 1,2,3 -NoEnumerate | Measure-Object

Count    : 1
...

Parametrar

-InputObject

Anger vilka objekt som ska skickas nedåt i pipelinen. Ange en variabel som innehåller objekten eller skriv ett kommando eller uttryck som hämtar objekten.

Type:PSObject[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-NoEnumerate

Som standard räknar cmdleten Write-Output alltid upp sina utdata. Parametern NoEnumerate undertrycker standardbeteendet och förhindrar att utdata räknas Write-Output upp. Parametern NoEnumerate har ingen effekt om kommandot är omslutet i parenteser, eftersom parenteserna framtvingar uppräkning. Till exempel räknas (Write-Output 1,2,3) matrisen fortfarande upp.

Parametern NoEnumerate är bara användbar i en pipeline. Att försöka se effekterna av NoEnumerate i konsolen är problematiskt eftersom PowerShell lägger Out-Default till i slutet av varje kommandorad, vilket resulterar i uppräkning. Men om du rör Write-Output -NoEnumerate till en annan cmdlet tar den underordnade cmdleten emot samlingsobjektet, inte samlingsobjektens uppräknade objekt.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Indata

PSObject

Du kan skicka objekt till den här cmdleten.

Utdata

PSObject

Den här cmdleten returnerar de objekt som skickas som indata.

Kommentarer

PowerShell innehåller följande alias för Write-Output:

  • Alla plattformar:

    • echo
  • Windows:

    • write