Odešle zadané objekty do dalšího příkazu v potrubí. Pokud je příkaz posledním příkazem v potrubí, objekty se zobrazí v konzole.
Syntaxe
Popis
Rutina Write-Output
odešle zadaný objekt dolů potrubím k dalšímu příkazu. Pokud je příkaz posledním příkazem v potrubí, objekt se zobrazí v konzole.
Write-Output
odesílá objekty dolů do primárního kanálu, známého také jako „výstupní proud“ nebo „kanál úspěchu“. Chcete-li odeslat chybové objekty dolů do chybového kanálu, použijte Write-Error.
Tato rutina se obvykle používá ve skriptech k zobrazení řetězců a dalších objektů na konzole. Jeden z integrovaných aliasů pro Write-Output
je echo
a podobný ostatním skořápkám, které používají echo
, výchozím chováním je zobrazení výstupu na konci kanálu. V prostředí PowerShell není obecně nutné používat rutinu v případech, kdy se ve výchozím nastavení zobrazuje výstup. Například Get-Process | Write-Output
je ekvivalentní s Get-Process
. Nebo lze echo "Home directory: $HOME"
napsat, "Home directory: $HOME"
.
Ve výchozím nastavení Write-Output
výčet prostřednictvím kolekcí poskytovaných rutině. Avšak Write-Output
lze také použít k předávání kolekcí dolů jako jeden objekt s parametrem NoEnumerate.
Příklady
Příklad 1: Získejte objekty a zapisujte je do konzoly
První příkaz získá procesy spuštěné v počítači a uloží je do $P
proměnná.
Druhý a třetí příkaz zobrazí objekty procesu v $P
na konzole.
Příklad 2: Předat výstup do jiné rutiny
Tento příkaz přepíše řetězec „testovací výstup“ do rutiny Get-Member
, která zobrazí membersof the System.String class, demonstrating that the string was passed along the pipeline.
Příklad 3: Potlačit výčet ve výstupu
Tento příkaz přidá parametr NoEnumerate k zacházení s kolekcí nebo polem jako s jedním objektem prostřednictvím kanálu.
Parametry
Určuje objekty, které se mají poslat dolů po kanálu. Zadejte proměnnou, která obsahuje objekty, nebo zadejte příkaz nebo výraz, který objekty získá.
Typ: | PSObject |
Pozice: | 0 |
Výchozí hodnota: | Žádná |
Přijmout vstup kanálu: | Pravda |
Přijmout zástupné znaky: | False |
Ve výchozím nastavení je Write-Output
rutina vždy vyjmenuje svůj výstup. Parametry NoEnumerate potlačují výchozí chování a brání Write-Output
ve výčtu výstupu. Parametr NoEnumerate nemá žádný účinek, pokud je příkaz zabalen do závorek, protože vynucení vynutí výčtu. Například (Write-Output 1,2,3)
stále vyčísluje pole.
Poznámka
Tento přepínač funguje správně pouze v prostředí PowerShell Core 6.2 a novějším. Ve starších verzích PowerShell Core je kolekce stále vyjmenována i při použití tohoto přepínače.
Typ: | SwitchParameter |
Pozice: | pojmenovaná |
výchozí hodnota: | Žádné |
Přijmout vstup kanálu: | Falešné |
Přijmout zástupné znaky: | False |
Vstupy
PSObject
Můžete propojit objekty do Write-Output
.
výstupy
PSObject
Write-Output
vrací objekty, které jsou odeslány jako vstup.
- about_Output_Streams
- about_Redirection
- Tee-Object
- Write-Debug
- Chyba zápisu
- Write-Host
- Informace o zápisu
- Průběh zápisu
- Write-Verbose
- Varování proti zápisu