Write-Warning

写入警告消息。

语法

Write-Warning [-Message] <string> [<CommonParameters>]

说明

Write-Warning cmdlet 会将警告消息写入 Windows PowerShell 主机。对警告的响应取决于用户的 $WarningPreference 变量的值以及 WarningAction 通用参数的使用。

参数

-Message <string>

指定警告消息。

是否为必需?

true

位置?

1

默认值

是否接受管道输入?

true (ByValue)

是否接受通配符?

false

<CommonParameters>

此 cmdlet 支持通用参数:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。有关详细信息,请参阅 about_Commonparameters.

输入和输出

输入类型是指可通过管道传递给 cmdlet 的对象的类型。返回类型是指 Cmdlet 所返回对象的类型。

输入

System.String

可以通过管道将包含警告的字符串传递给 Write-Warning。

输出

Write-Warning 只写入警告流。它不会生成任何其他输出。

说明

$WarningPreference 变量的默认值是“Continue”,它显示警告,然后继续执行命令。若要确定诸如 $WarningPreference 等首选项变量的有效值,请将其设置为由随机字符(如“abc”)组成的字符串。所得到的错误消息将列出有效值。

示例 1

C:\PS>write-warning "This is only a test warning."

说明
-----------
此命令显示消息“WARNING: This is only a test warning.”





示例 2

C:\PS>$w = "This is only a test warning."

C:\PS> $w | write-warning

说明
-----------
此示例说明如何使用管道运算符 (|) 将字符串发送至 Write-Warning。您可以将字符串保存在变量中,如此命令中所示,或者通过管道直接将字符传递给 Write-Warning。





示例 3

C:\PS>$warningpreference

Continue

C:\PS> write-warning "This is only a test warning."
This is only a test warning.

C:\PS> $warningpreference = "SilentlyContinue"

C:\PS> write-warning "This is only a test warning."
C:\PS>

C:\PS> $warningpreference = "Stop"

C:\PS> write-warning "This is only a test warning."
WARNING: This is only a test message.
Write-Warning : Command execution stopped because the shell variable "WarningPreference" is set to Stop.
At line:1 char:14
+ write-warning <<<<  "This is only a test message."

说明
-----------
此示例演示了 $WarningPreference 变量的值对 Write-Warning 命令的影响。

第一条命令显示 $WarningPreference 变量的默认值,即“Continue”。因此,当您写入警告时,会显示该警告消息并且执行过程将会继续。

当您更改 $WarningPreference 变量的值时,Write-Warning 命令的作用又发生变化。值为“SilentlyContinue”时会禁止警告。值为“Stop”时会显示警告,然后停止执行该命令。

有关 $WarningPreference 变量的详细信息,请参阅 about_Preference_Variables。





示例 4

C:\PS>write-warning "This is only a test warning." -warningaction Inquire

WARNING: This is only a test warning.

Confirm
Continue with this operation?
[Y] Yes  [A] Yes to All  [H] Halt Command  [S] Suspend  [?] Help (default is "Y"):

说明
-----------
此示例演示了 WarningAction 通用参数的值对 Write-Warning 命令的影响。您可以将 WarningAction 通用参数与任何 cmdlet 结合使用,来确定 Windows PowerShell 如何响应从该命令生成的警告。WarningAction 通用参数只为该特定命令覆盖 $WarningPreference 的值。

此命令使用 Write-Warning cmdlet 显示警告。值为“Inquire”的 WarningAction 通用参数指示系统在命令显示警告时提示用户。

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





另请参阅

概念

About_Preference_Variables
about_Commonparameters
Write-Debug
Write-Error
Write-Host
Write-Output
Write-Progress
Write-Verbose