Powershell跟踪和控制-M

时间:2014-02-12 17:26:12

标签: windows powershell control-m

在从Control-M运行Powershell脚本时尝试捕获跟踪输出时,我似乎遇到了问题/错误。

输出文件显示了start-trace和stop-trace命令的页眉和页脚,但它没有显示我尝试捕获的任何其他内容。具体来说,如果我的脚本在某处发出了写主机命令,那么该信息就不会在输出(跟踪)文件中捕获。

这是一个超级简单的脚本,可以说明我的问题:

start-transcript -path "C:\Powershell\transcript.log"
write-host "test message"
#do stuff...
stop-transcript

以下是通过Control-M运行脚本时当前输出的示例:

**********************
Windows PowerShell Transcript Start
Start time: 20140212002005
Username  : mydomain\SYSTEM 
Machine   : myserver (Microsoft Windows NT 6.1.7601 Service Pack 1) 
**********************
**********************
Windows PowerShell Transcript End
End time: 20140212002008
**********************

请注意,我的测试消息没有显示出来!这只发生在我通过Control-M运行脚本时。当我手动运行脚本时,我的“测试消息”确实显示在脚本输出中。

我的第一个怀疑是文件权限,但这些对我来说很好。 Control-M代理使用系统级访问,因此它应该具有所需的所有权限。如果是文件权限问题,我不相信我甚至会收到页眉/页脚消息。

我在PS v2.0上。我的服务器正在运行2008r2。

任何想法都赞赏......

1 个答案:

答案 0 :(得分:1)

Write-Host写入控制台窗口,这不是Control-M“监视”的内容。请尝试使用Write-OutputWrite-Host通常您想要产生的输出。

请参阅http://windowsitpro.com/blog/what-do-not-do-powershell-part-1http://powershell.com/cs/blogs/donjones/archive/2012/04/06/2012-scripting-games-commentary-stop-using-write-host.aspx