答案1
我建议你注意有关 PowerShell 重定向的 Microsoft 文档。
要将错误流重定向为空,您需要应用于2>$null
引发错误的 cmdlet。然而...
推测是Copy-Item
cmdlet 引发了错误;如果是这样,您不应该尝试重定向并丢弃错误流,而应该完全抑制它。这可以通过-ErrorAction SilentlyContinue
向Copy-Item
cmdlet 添加参数来实现:
$names | ForEach-Object { Copy-Item -Path C:\Users\$_\* -Destination C:\Users\$user\Desktop\${_}_removed -Recurse -ErrorAction SilentlyContinue }