sco*_*obi 3 powershell logging
我有一个PowerShell脚本,可以输出到stdout和stderr。我想同时将它们发送到几个日志文件中。
最好的方法是什么?
我考虑过的几件事:
param()从外部脚本中复制内部脚本中的代码块的问题。我可以完全移动param()块,但有时我也想调用内部脚本以进行测试(即未获得T恤)。我想我可以在外部脚本中使该行为成为可选行为。我记得当我以前写过一些perl时,有一种便捷的方法可以通过一个钩子全局重定向所有stdout / err输出。PowerShell可能会发生这种情况吗?
哎呀 我应该在Google上呆几分钟。
开始成绩单可以做到这一点!
http://technet.microsoft.com/zh-CN/library/dd347721.aspx
..虽然它不捕获exe的输出,但仅捕获PowerShell。这是一个很好的解决方法:
另一个更新:我发现Start-Transcript使用主机窗口缓冲区宽度,当在系统帐户或任何其他帐户上运行计划任务时,该宽度太窄。解决方法如下。在脚本顶部添加以下内容:
try
{
$host.ui.rawui.buffersize = `
new-object system.management.automation.host.size `
200, $host.ui.rawui.buffersize.height
}
catch {}
Run Code Online (Sandbox Code Playgroud)
将200更改为所需的成绩单宽度。
| 归档时间: |
|
| 查看次数: |
1545 次 |
| 最近记录: |