Tee-Object
Sparar kommandoutdata i en fil eller variabel och skickar den även nedåt i pipelinen.
Syntax
Tee-Object
[-InputObject <PSObject>]
[-FilePath] <String>
[-Append]
[<CommonParameters>]
Tee-Object
[-InputObject <PSObject>]
-LiteralPath <String>
[<CommonParameters>]
Tee-Object
[-InputObject <PSObject>]
-Variable <String>
[<CommonParameters>]
Description
Cmdleten omdirigerar utdata, det vill. Den Tee-Object
skickar utdata från ett kommando i två riktningar (till exempel bokstaven T). Den lagrar utdata i en fil eller variabel och skickar den även nedåt i pipelinen. Om Tee-Object
är det sista kommandot i pipelinen visas kommandoutdata i kommandotolken.
Exempel
Exempel 1: Utdataprocesser till en fil och till konsolen
Det här exemplet hämtar en lista över de processer som körs på datorn och skickar resultatet till en fil. Eftersom en andra sökväg inte har angetts visas även processerna i konsolen.
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
...
Exempel 2: Utdataprocesser till en variabel och "Select-Object"
Det här exemplet hämtar en lista över de processer som körs på datorn, sparar dem i variabeln $proc
och skickar dem till Select-Object
.
Get-Process notepad | Tee-Object -Variable proc | Select-Object processname,handles
ProcessName Handles
----------- -------
notepad 43
notepad 37
notepad 38
notepad 38
Cmdleten Select-Object
väljer egenskaperna ProcessName och Handles . Observera att variabeln $proc
innehåller standardinformationen som returneras av Get-Process
.
Exempel 3: Mata ut systemfiler till två loggfiler
I det här exemplet sparas en lista över systemfiler i två loggfiler, en kumulativ fil och en aktuell fil.
Get-ChildItem -Path D: -File -System -Recurse |
Tee-Object -FilePath "c:\test\AllSystemFiles.txt" -Append |
Out-File c:\test\NewSystemFiles.txt
Kommandot använder cmdleten Get-ChildItem
för att göra en rekursiv sökning efter systemfiler på D:-enheten. En pipelineoperator (|
) skickar listan till Tee-Object
, som lägger till listan i filen AllSystemFiles.txt och skickar listan nedåt i pipelinen till cmdleten Out-File
, vilket sparar listan i NewSystemFiles.txt file
.
Parametrar
-Append
Anger att cmdleten lägger till utdata till den angivna filen. Utan den här parametern ersätter det nya innehållet befintligt innehåll i filen utan varning.
Den här parametern introducerades i Windows PowerShell 3.0.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-FilePath
Anger en fil som den här cmdleten sparar objektet till Jokertecken tillåts, men måste matcha till en enda fil.
Typ: | String |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | True |
-InputObject
Anger det objekt som ska sparas och visas. Ange en variabel som innehåller objekten eller skriv ett kommando eller uttryck som hämtar objekten. Du kan också skicka ett objekt till Tee-Object
.
När du använder parametern InputObject med Tee-Object
i stället för att skicka kommandoresultat till Tee-Object
behandlas InputObject-värdet som ett enskilt objekt även om värdet är en samling.
Typ: | PSObject |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-LiteralPath
Anger en fil som den här cmdleten sparar objektet till. Till skillnad från FilePath används värdet för parametern LiteralPath precis som det skrivs. Inga tecken tolkas som jokertecken. Om sökvägen innehåller escape-tecken omger du den med enkla citattecken. Enkla citattecken gör att PowerShell inte tolkar några tecken som escape-sekvenser.
Typ: | String |
Alias: | PSPath |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Variable
Anger en variabel som cmdleten sparar objektet till. Ange ett variabelnamn utan föregående dollartecken ($
).
Typ: | String |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
Indata
Du kan skicka objekt till den här cmdleten.
Utdata
Den här cmdleten returnerar det objekt som omdirigeras.
Kommentarer
Windows PowerShell innehåller följande alias för Tee-Object
:
tee
Du kan också använda cmdleten Out-File
eller omdirigeringsoperatorn, som båda sparar utdata i en fil men inte skickar dem i pipelinen.
Tee-Object
använder "Unicode" (UTF-16LE) kodning när den skriver till filer. Om du behöver en annan kodning använder du cmdleten Out-File
med kodningsparametern .