【发布时间】:2020-11-28 10:07:52
【问题描述】:
在一个 powershell 脚本中,我调用了一个程序并希望将 stdout 和 stderr 重定向到 不同的 文件,同时仍然在控制台中显示两者的输出。所以基本上,我想要
stdout -> stdout
stdout -> out.log
stderr -> stderr
stderr -> err.log
到目前为止,我想出了这个代码,但不幸的是它只满足要求 1、2 和 4。Stderr 没有打印在屏幕上。
& program 2>"err.log" | Tee-Object -FilePath "out.log" -Append | Write-Host
如何将stderr 也打印到控制台?由于写信给stderr 会产生红色字体,我不想将stderr 重定向到stdout,这样我就会失去对错误的视觉印象。
【问题讨论】:
-
这不是与stackoverflow.com/questions/24222088/… 重复吗?您想立即将输出发布到控制台吗?
-
@Clijsters 当
program运行很长时间时,最好有一些中间输出。但尽管如此,这是一个很好的解决方法。