在執行期間將 PowerShell 輸出重定向到檔案

Rohan Timalsina 2023年1月30日
  1. 在執行期間使用 Out-File Cmdlet 將 PowerShell 輸出重定向到檔案
  2. 在執行期間使用 Set-Content 將 PowerShell 輸出重定向到檔案
  3. 在執行期間使用重定向運算子將 PowerShell 輸出重定向到檔案
  4. 在執行期間使用 Tee-Object 將 PowerShell 輸出重定向到檔案
在執行期間將 PowerShell 輸出重定向到檔案

PowerShell 的基本功能之一是它自動格式化輸出。你執行命令或指令碼,PowerShell 會將結果返回到控制檯。

但有時,在某些情況下,你需要將輸出寫入檔案而不是控制檯。

本教程將介紹在執行期間將 PowerShell 的輸出重定向到檔案的不同方法。

在執行期間使用 Out-File Cmdlet 將 PowerShell 輸出重定向到檔案

Out-File cmdlet 將輸出傳送到檔案。它使用 PowerShell 的格式化系統來寫入檔案。

命令或指令碼的輸出沿管道傳送到 Out-File cmdlet。檔案中內容的儲存方式與控制檯上顯示的方式相同。

Get-Command gcc| Out-File -FilePath C:\new\test.txt

輸出:

Get-Command gcc 的輸出被髮送到檔案 test.txt

powershell 輸出傳送到檔案

你可以使用 -Append 引數將輸出新增到檔案末尾,而無需替換現有內容。

Get-Command git| Out-File -FilePath C:\new\test.txt -Append

輸出:

Get-Command git 的輸出被新增到 test.txt 檔案的末尾。

powershell 輸出傳送到檔案

在執行期間使用 Set-Content 將 PowerShell 輸出重定向到檔案

Set-Content 是一個字串處理 cmdlet,用於寫入新內容或替換檔案中的內容。

它將你在管道中傳送的命令或指令碼的物件轉換為字串並寫入指定的檔案。

./myscript.ps1  | Set-Content -Path C:\New\hello.txt

輸出:

myscript.ps1 的輸出被髮送到檔案 hello.txt

powershell 輸出傳送到檔案

Set-Content 替換檔案中的現有內容。你可以使用 Add-Content cmdlet 將內容附加到指定檔案。

Get-Date | Add-Content -Path C:\New\test.txt

輸出:

Get-Date 的輸出被新增到 test.txt 檔案的末尾。

powershell 輸出傳送到檔案

在執行期間使用重定向運算子將 PowerShell 輸出重定向到檔案

PowerShell 中有兩個重定向運算子,可用於將輸出重定向到檔案。一個是 >,相當於 Out-File,另一個是 >>,相當於 Out-File -Append

> 寫入新內容或替換檔案中的現有內容。

Get-Date > C:\New\new.txt

>> 將內容附加到指定的檔案。

Get-Date >> C:\New\new.txt

在執行期間使用 Tee-Object 將 PowerShell 輸出重定向到檔案

Tee-Object cmdlet(如字母 T)向兩個方向傳送命令或指令碼輸出。它將輸出儲存在檔案或變數中,並將其傳送到管道中。

如果 Tee-Object 是管道中的最後一個命令,控制檯也會顯示輸出。

Get-Process | Tee-Object -FilePath C:\New\process.txt

輸出:

如你所見,輸出儲存在檔案中並顯示在控制檯上。

powershell 輸出傳送到檔案

你可以使用帶有此 cmdlet 的 -Append 將輸出附加到指定檔案。

Get-Process | Tee-Object -FilePath C:\New\process.txt -Append
作者: Rohan Timalsina
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website

相關文章 - PowerShell File