在 Windows PowerShell 中写入输出

Marion Paul Kenneth Mendoza 2023年1月30日
  1. PowerShell 中的 Write-Output Cmdlet
  2. PowerShell 中的 Write-Host Cmdlet
  3. PowerShell 中的 Write-Debug Cmdlet
  4. PowerShell 中的 Write-Verbose Cmdlet
在 Windows PowerShell 中写入输出

将输出写入控制台是任何语言的基本过程,因为它可以正确地向用户提供反馈。但是,在 Windows PowerShell 中有多种打印输出的方法。本文将区分多个 Write cmdlet,并提供我们可以在何时何地使用它们的情况。

在我们开始讨论 cmdlet 之前,值得注意的是,Windows PowerShell 可以通过用双引号 ("") 将单行括起来来输出一些内容。

示例代码:

"Hello World!"

输出:

Hello World!

由于字符串文字表达式和隐藏管道,此语法在 Windows PowerShell 中是可能的。语法等效于以下示例代码。

示例代码:

"Hello World!" | Out-Host

另一方面,Out-Host cmdlet 发送前面的对象以供显示。

PowerShell 中的 Write-Output Cmdlet

Windows PowerShell 中的第一种打印方法是 Write-Output cmdlet。此 cmdlet 是在我们的 PowerShell 脚本环境中打印的基本语法。我们可以将其等同于许多语言的基本打印命令,例如 printstdout

示例代码:

Write-Output "Hello World!"

输出:

Hello World!

PowerShell 中的 Write-Host Cmdlet

Write-Host cmdlet 是另一种打印方法,类似于以前的方法 Write-Output。唯一的区别是它可以使用参数 -BackgroundColor-ForegroundColor 输出不同的颜色。

PowerShell 中的 Write-Debug Cmdlet

Write-Debug cmdlet 也是在 Windows PowerShell 中打印的另一种方法。但是,这通常更多地用于在脚本环境中打印调试消息。默认情况下不显示消息,但可以使用 $debugPreference 变量显示。

示例代码:

Write-Debug "Error on line 1 but will silently continue."
$debugPreference = "Continue"
Write-Debug "Error on line 3 will now be displayed"

输出:

DEBUG: Error on line 3 will now be displayed 

PowerShell 中的 Write-Verbose Cmdlet

Write-Verbose cmdlet 将文本写入 Windows PowerShell 中的详细消息流。详细消息流被定义为传递有关命令进程的更多信息。与 Write-Debug 一样,默认情况下不显示详细消息,但可以使用变量 $VerbosePreference 或通过添加开关参数 -Verbose 显示。

示例代码:

Write-Verbose -Message "This will not be displayed."
Write-Verbose -Message "This will be displayed" -Verbose

输出:

VERBOSE: This will be displayed
Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn