Tee-Object
將命令輸出儲存到檔案或變數,然後在主控台中顯示。
語法
Tee-Object [-FilePath] <string> [-InputObject <psobject>] [<CommonParameters>]
Tee-Object -Variable <string> [-InputObject <psobject>] [<CommonParameters>]
描述
Tee-Object Cmdlet 會以兩個方向 (像字母 "T") 傳送命令的輸出。此 Cmdlet 會將輸出儲存到檔案或變數,同時沿著管線向下傳送。如果 Tee-Object 是管線中的最後一個命令,命令輸出則會顯示在主控台中。
參數
-FilePath <string>
指定 cmdlet 用來儲存物件的檔案。接受解析結果為單一檔案的萬用字元。
必要? |
true |
位置? |
1 |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-InputObject <psobject>
指定要對 cmdlet 輸入的物件。請輸入包含物件的變數,或輸入可取得物件的命令或運算式。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
true (ByValue) |
接受萬用字元? |
false |
-Variable <string>
將輸入物件的參照指派給指定的變數。
必要? |
true |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
<CommonParameters>
這個 Cmdlet 支援一般參數:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。如需詳細資訊,請參閱 about_Commonparameters.
輸入和輸出
輸入型別是可經由管道輸出至 Cmdlet 的物件型別。傳回型別則是 Cmdlet 所傳回的物件型別。
輸入 |
System.Management.Automation.PSObject 您可經由管道將要重新導向的物件輸出至 Tee-Object。 |
輸出 |
System.Management.Automation.PSObject Tee-Object 會傳回它重新導向的物件。 |
附註
您也可以使用 Out-File Cmdlet 或重新導向運算子,兩者都會將輸出儲存到檔案,但不沿著管線向下傳送。
Tee-Object 在寫入檔案時會使用 Unicode 編碼。因此,不同編碼的檔案可能會造成輸出格式錯誤。若要指定編碼,請使用 Out-File Cmdlet。
範例 1
C:\PS>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
...
描述
-----------
這個命令取得電腦中執行之處理序的清單,並將結果傳送到檔案。因為沒有指定第二個路徑,所以結果將會顯示在主控台中。
範例 2
C:\PS>get-process notepad | tee-object -variable proc | select-object processname,handles
ProcessName Handles
----------- -------
notepad 43
notepad 37
notepad 38
notepad 38
描述
-----------
這個命令會取得電腦中執行之處理序的清單,並將結果傳送到名為 "proc" 的變數。然後,它會經由管道將產生的物件輸出至 Select-Object,後者再接著選取 ProcessName 和 Handles 屬性。請注意,$proc 變數包含 Get-Process 所傳回的預設資訊。