在执行期间将 PowerShell 输出重定向到文件

Rohan Timalsina 2023年1月30日 2022年5月16日
  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 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