Sdílet prostřednictvím


Tee-Object

Uloží výstup příkazu do souboru nebo proměnné a odešle ho také do kanálu.

Syntax

File (Výchozí)

Tee-Object
    [-FilePath] <String>
    [-InputObject <PSObject>]
    [-Append]
    [<CommonParameters>]

LiteralFile

Tee-Object
    -LiteralPath <String>
    [-InputObject <PSObject>]
    [<CommonParameters>]

Variable

Tee-Object
    -Variable <String>
    [-InputObject <PSObject>]
    [<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 proměnné $proc a vloží 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 proměnná $proc 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 AllSystemFiles.txt souboru a předá seznam kanálu do rutiny Out-File, která seznam uloží do NewSystemFiles.txt file.

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.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

File
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-FilePath

Určuje soubor, který tato rutina uloží objekt do zástupných znaků, ale musí se přeložit na jeden soubor.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:True
DontShow:False
Aliasy:Cesta

Sady parametrů

File
Position:0
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-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 do Tee-Object.

Pokud použijete parametr InputObject s Tee-Object, namísto piping command results to Tee-Object, InputObject hodnota je považována za jeden objekt, i když je hodnota kolekce.

Vlastnosti parametru

Typ:PSObject
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:True
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-LiteralPath

Určuje soubor, do kterého tato rutina uloží objekt. Na rozdíl od FilePathse hodnota parametru LiteralPath používá přesně tak, jak je zadán. Žádný znak není interpretován jako zástupný znak. Pokud cesta obsahuje únikové znaky, uzavřete ji do jednoduchých uvozovek. Jednoduché uvozovky říkají PowerShellu, aby žádné znaky neinterpretoval jako únikové sekvence.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False
Aliasy:PSPath, PO

Sady parametrů

LiteralFile
Position:Named
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Variable

Určuje proměnnou, do které rutina uloží objekt. Zadejte název proměnné bez předchozího znaku dolaru ($).

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

Variable
Position:Named
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

CommonParameters

Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.

Vstupy

PSObject

Objekty můžete pipetovat do Tee-Object.

Výstupy

PSObject

Tee-Object Vrátí objekt, který přesměrovává.

Poznámky

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.

Počínaje PowerShellem 6 Tee-Object používá kódování UTF-8 bez BOM při zápisu do souborů. Pokud potřebujete jiné kódování, použijte rutinu Out-File s parametrem Encoding.