Tee-Object
Uloží výstup příkazu do souboru nebo proměnné a odešle ho také do kanálu.
Syntaxe
Tee-Object
[-InputObject <PSObject>]
[-FilePath] <String>
[-Append]
[<CommonParameters>]
Tee-Object
[-InputObject <PSObject>]
-LiteralPath <String>
[<CommonParameters>]
Tee-Object
[-InputObject <PSObject>]
-Variable <String>
[<CommonParameters>]
Description
Rutina Tee-Object
přesměruje výstup, to znamená, že odesílá výstup příkazu ve dvou směrech (například písmeno T). Uloží výstup do souboru nebo proměnné a také ho odešle do kanálu. Pokud Tee-Object
je posledním příkazem v kanálu, zobrazí se na příkazovém řádku výstup příkazu.
Příklady
Příklad 1: Výstupní procesy do souboru a konzoly
Tento příklad získá seznam procesů spuštěných v počítači a odešle výsledek do souboru. Protože není zadána druhá cesta, procesy se také zobrazí v konzole.
Get-Process | Tee-Object -FilePath "C:\Test1\testfile2.txt"
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName
------- ------ ----- ----- ----- ------ -- -----------
83 4 2300 4520 39 0.30 4032 00THotkey
272 6 1400 3944 34 0.06 3088 alg
81 3 804 3284 21 2.45 148 ApntEx
81 4 2008 5808 38 0.75 3684 Apoint
...
Příklad 2: Výstupní procesy do proměnné a Select-Object
Tento příklad získá seznam procesů spuštěných v počítači, uloží je do $proc
proměnné a předá je do Select-Object
.
Get-Process notepad | Tee-Object -Variable proc | Select-Object processname,handles
ProcessName Handles
----------- -------
notepad 43
notepad 37
notepad 38
notepad 38
Rutina Select-Object
vybere vlastnosti ProcessName a Handles . Všimněte si, že $proc
proměnná obsahuje výchozí informace vrácené Get-Process
.
Příklad 3: Výstupní systémové soubory do dvou souborů protokolu
Tento příklad uloží seznam systémových souborů do dvou souborů protokolu, kumulativního souboru a aktuálního souboru.
Get-ChildItem -Path D: -File -System -Recurse |
Tee-Object -FilePath "c:\test\AllSystemFiles.txt" -Append |
Out-File c:\test\NewSystemFiles.txt
Příkaz používá rutinu Get-ChildItem
k rekurzivnímu vyhledávání systémových souborů na jednotce D: . Operátor kanálu (|
) odešle seznam Tee-Object
, který připojí seznam k souboru AllSystemFiles.txt a předá seznam dolů kanálu do Out-File
rutiny, která uloží seznam do NewSystemFiles.txt file
souboru .
Parametry
-Append
Označuje, že rutina připojí výstup k zadanému souboru. Bez tohoto parametru nahradí nový obsah veškerý existující obsah v souboru bez upozornění.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-FilePath
Určuje soubor, který tato rutina uloží objekt do zástupných znaků, ale musí se přeložit na jeden soubor.
Typ: | String |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
-InputObject
Určuje objekt, který se má uložit a zobrazit. Zadejte proměnnou obsahující objekty nebo zadejte příkaz nebo výraz, který objekty získá. Objekt můžete také pipetovat na Tee-Object
.
Pokud použijete inputObject parametr s Tee-Object
, místo piping command výsledky , Tee-Object
InputObject je považována za jeden objekt, i když je hodnota kolekce.
Typ: | PSObject |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-LiteralPath
Určuje soubor, do kterého tato rutina uloží objekt. Na rozdíl od FilePath se hodnota parametru LiteralPath používá přesně tak, jak je zadána. Žádné znaky nejsou interpretovány jako zástupné znaky. Pokud cesta obsahuje řídicí znaky, uzavřete ji do jednoduchých uvozovek. Jednoduché uvozovky říkají PowerShellu, aby nepřekládaly žádné znaky jako řídicí sekvence.
Typ: | String |
Aliasy: | PSPath |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Variable
Určuje proměnnou, do které rutina uloží objekt. Zadejte název proměnné bez předchozího znaku dolaru ($
).
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
Vstupy
Objekty můžete do této rutiny pipetovat.
Výstupy
Tato rutina vrátí objekt, který přesměruje.
Poznámky
Windows PowerShell obsahuje následující aliasy pro Tee-Object
:
tee
Můžete také použít rutinu Out-File
nebo operátor přesměrování, z nichž oba ukládají výstup do souboru, ale neodesílají ho do kanálu.
Tee-Object
při zápisu do souborů používá kódování Unicode (UTF-16LE). Pokud potřebujete jiné kódování, použijte rutinu Out-File
s parametrem Kódování .