调用外部可执行文件时抑制 Powershell 错误

Suppressing Powershell Errors When Calling External Executables

我有一个调用外部可执行文件的 PowerShell 脚本,我想抑制由此产生的任何错误。这怎么能实现。使用 PowerShell cmdlet,我可以使用 SilentlyContinue 的标准 -ErrorAction 参数,但这是一个外部可执行文件:

someExe --argument

外部命令的错误输出转到 error stream (provided the command is writing error messages to STDERR), so you just need to redirect 该流以抑制消息:

someExe --argument 2>$null

如果命令写入 STDOUT 而不是 STDERR(异常行为,但并非闻所未闻),您可能需要重定向成功输出流:

someExe --argument >$null