Tee-Object
Komut çıkışını bir dosyaya veya değişkene kaydeder ve işlem hattına gönderir.
Syntax
File (Varsayılan)
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
Tee-Object Cmdlet çıkışı iki yönde yazılır. Çıkışı bir dosyada veya değişkende depolar ve işlem hattına gönderir. İşlem hattındaki son komut ise Tee-Object , komut çıkışı konsolunda görüntülenir.
dahili olarak Tee-Object ve Out-File komutlarını Set-Variable kullanır. Bu komutlar WhatIf parametresini destekler. Komut Tee-ObjectWhatIf parametresini desteklemez. Ancak, WhatIf parametresini destekleyen bir betik veya işlev sarmalarsanızTee-Object, Tee-Object ve Out-File komutlarına Set-VariableWhatIf durumunu geçirir.
Örnekler
Örnek 1: Çıktı işlemleri bir dosyaya ve konsola işlenir
Bu örnek, bilgisayarda çalışan işlemlerin listesini alır ve sonucu bir dosyaya gönderir. İkinci bir yol belirtilmediğinden, işlemler konsolunda da görüntülenir.
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
...
Örnek 2: Bir değişkene ve 'Select-Object' için çıkış işlemleri
Bu örnek, bilgisayarda çalışan işlemlerin listesini alır, bunları $proc değişkenine kaydeder ve Select-Object'e iletir.
Get-Process notepad | Tee-Object -Variable proc | Select-Object ProcessName, Handles
ProcessName Handles
----------- -------
notepad 43
notepad 37
notepad 38
notepad 38
Select-Object cmdlet'i ProcessName ve Handles özelliklerini seçer.
$proc değişkeninin Get-Processtarafından döndürülen varsayılan bilgileri içerdiğini unutmayın.
Örnek 3: Sistem dosyalarını iki günlük dosyasına çıkış yapma
Bu örnek, sistem dosyalarının listesini iki günlük dosyasına, bir kümülatif dosyaya ve geçerli bir dosyaya kaydeder.
Get-ChildItem -Path D: -File -System -Recurse |
Tee-Object -FilePath "C:\test\AllSystemFiles.txt" -Append |
Out-File C:\test\NewSystemFiles.txt
Komut, D: sürücüsündeki sistem dosyaları için özyinelemeli arama yapmak için Get-ChildItem cmdlet'ini kullanır. İşlem hattı işleci (|), listeyi Tee-Objectadresine gönderir; bu işlem hattında listeyi AllSystemFiles.txt dosyasına ekler ve listeyi Out-File cmdlet'ine geçirir ve bu da listeyi NewSystemFiles.txt filekaydeder.
Örnek 4: **WhatIf** parametresiyle betikte 'Tee-Object' kullanma
Komut Tee-ObjectWhatIf parametresini desteklemez. Ancak, WhatIf parametresini destekleyen bir betik veya işlev sarmalarsanızTee-Object, Tee-ObjectWhatIf durumunu dahili olarak kullandığı ve Out-File komutlarına Set-Variable geçirir.
PS> function Test-Tee {
[Cmdletbinding(SupportsShouldProcess)]
Param()
$true|tee -Variable b
"Variable `$b is set to '$b'"
}
PS> Test-Tee
True
Variable $b is set to 'True'
PS> Test-Tee -WhatIf
True
What if: Performing the operation "Set variable" on target "Name: b Value: True".
Variable $b is set to ''
Parametreler
-Append
Cmdlet'in çıkışı belirtilen dosyaya eklediğini gösterir. Bu parametre olmadan yeni içerik, dosyadaki mevcut içeriğin yerini uyarı olmadan alır.
Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | False |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
File
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-FilePath
Bu cmdlet'in nesneyi Joker karakterlere kaydettiği bir dosyaya izin verilir, ancak tek bir dosyaya çözümlenmesi gerekir.
Parametre özellikleri
| Tür: | String |
| Default value: | None |
| Joker karakterleri destekler: | True |
| DontShow: | False |
Parametre kümeleri
File
| Position: | 0 |
| Zorunlu: | True |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-InputObject
Kaydedilecek ve görüntülenecek nesneyi belirtir. Nesneleri içeren bir değişken girin veya nesneleri alan bir komut veya ifade yazın. Bir nesneyi Tee-Object'e de yöneltebilirsiniz.
ile Tee-Object parametresini kullandığınızda, Tee-Objectiçin komut sonuçlarının InputObject değeri, değer bir koleksiyon olsa bile tek bir nesne olarak değerlendirilir.
Parametre özellikleri
| Tür: | PSObject |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | True |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-LiteralPath
Bu cmdlet'in nesneyi kaydettiği dosyayı belirtir. FilePathaksine, LiteralPath parametresinin değeri tam olarak yazıldığı gibi kullanılır. Hiçbir karakter joker karakter olarak yorumlanmamıştır. Yol kaçış karakterleri içeriyorsa, yolu tek tırnak işaretleriyle çevreleyin. Tek tırnak işaretleri, PowerShell'in hiçbir karakteri kaçış dizisi olarak yorumlamamasını sağlar.
Parametre özellikleri
| Tür: | String |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | PSPath |
Parametre kümeleri
LiteralFile
| Position: | Named |
| Zorunlu: | True |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-Variable
Cmdlet'in nesneyi kaydettiği değişkeni belirtir. Önceki dolar işareti ($) olmadan bir değişken adı girin.
Parametre özellikleri
| Tür: | String |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
Variable
| Position: | Named |
| Zorunlu: | True |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
CommonParameters
Bu cmdlet yaygın parametreleri destekler: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction ve -WarningVariable. Daha fazla bilgi için bkz. about_CommonParameters.
Girişler
PSObject
Nesneleri bu cmdlet'e yöneltebilirsiniz.
Çıkışlar
PSObject
Bu cmdlet yeniden yönlendirildiği nesneyi döndürür.
Notlar
Windows PowerShell, Tee-Objectiçin aşağıdaki diğer adları içerir:
tee
Out-File cmdlet'ini veya yeniden yönlendirme işlecini de kullanabilirsiniz. Her ikisi de çıkışı bir dosyaya kaydeder ancak işlem hattına göndermez.
Tee-Object dosyalara yazarken "Unicode" (UTF-16LE) kodlamasını kullanır. Farklı bir kodlamaya ihtiyacınız varsa Out-File parametresiyle cmdlet'ini kullanın.