Write-Debug

将调试消息写入控制台。

语法

Write-Debug
     [-Message] <String>
     [<CommonParameters>]

说明

Write-Debug cmdlet 通过脚本或命令将调试消息写入主机。

默认情况下,调试消息不会显示在控制台中,但可以通过使用 Debug 参数或 $DebugPreference 变量来显示它们。

示例

示例 1:了解 $DebugPreference

此示例写入一条调试消息。

Write-Debug "Cannot open file."

$DebugPreference 的默认值为 SilentlyContinue。 因此,消息不会显示在控制台中。

示例 2:更改 $DebugPreference 的值

此示例显示更改 $DebugPreference 变量的值的效果。 首先,我们显示 $DebugPreference 的当前值,并尝试编写调试消息。 然后,我们将 $DebugPreference 的值更改为 Continue,以允许显示调试消息。

PS> $DebugPreference
SilentlyContinue
PS> Write-Debug "Cannot open file."
PS>
PS> $DebugPreference = "Continue"
PS> Write-Debug "Cannot open file."
DEBUG: Cannot open file.

有关 $DebugPreference的详细信息,请参阅 about_Preference_Variables

示例 3:使用 Debug 参数覆盖 $DebugPreference

Test-Debug 函数将 $DebugPreference 变量的值写入 PowerShell 主机和调试流。 在此示例中,我们使用 Debug 参数覆盖 $DebugPreference 值。

function Test-Debug {
    [CmdletBinding()]
    param()
    Write-Debug ('$DebugPreference is ' + $DebugPreference)
    Write-Host ('$DebugPreference is ' + $DebugPreference)
}

PS> Test-Debug
$DebugPreference is SilentlyContinue

PS> Test-Debug -Debug
DEBUG: $DebugPreference is Continue
$DebugPreference is Continue
PS> $DebugPreference
SilentlyContinue

请注意,使用 Debug 参数时,$DebugPreference 的值会更改。 此更改仅影响函数的作用域。 该值在函数外部不受影响。

有关 Debug 通用参数的详细信息,请参阅 about_CommonParameters

参数

-Message

指定要发送到控制台的调试消息。

Type:String
Aliases:Msg
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

输入

String

可以通过管道将包含调试消息的字符串传递给此 cmdlet。

输出

None

此 cmdlet 不返回任何输出。 它仅写入到调试流。