如何重定向 Powershell Core 中的错误输出?

Bot*_*ish 2 powershell

我试图将任何错误重定向到 null,但我似乎无法理解它。有什么帮助吗?

这是我的代码:$names | foreach-object{Copy-Item -Path C:\Users\$_\* -Destination C:\Users\$user\Desktop\${_}_removed -Recurse} | out-null

完整错误文本:
在此输入图像描述

Jef*_*lin 5

我建议您注意有关 PowerShell 重定向的 Microsoft 文档

要将错误流重定向到 null,您可以应用2>$null引发错误的 cmdlet。然而...

据推测,是Copy-Itemcmdlet 引发了错误;如果是这样,您应该完全抑制它,而不是尝试重定向并丢弃错误流。这可以通过将参数添加-ErrorAction SilentlyContinueCopy-Itemcmdlet 来完成:

$names | ForEach-Object { Copy-Item -Path C:\Users\$_\* -Destination C:\Users\$user\Desktop\${_}_removed -Recurse -ErrorAction SilentlyContinue }
Run Code Online (Sandbox Code Playgroud)