成绩单使用远程处理

我有一个文件transcript-test.ps1与下面的内容

$ log ='TestLog {0:yyyyMMdd -HHmm}“-f(Get-Date)$ logfile ='C: logs '+ $ log +'.txt'开始 - 转录 - 路径$ logfile -force写入 - 测试这条消息是否被记录“Stop-transcript

我尝试运行脚本让我们说“box1”,日志文件包含下面的内容

********** Windows PowerShell脚本开始启动时间:20110105114050用户名:domain user机器:BOX1(Microsoft Windows NT 5.2.3790 Service Pack 2) **********脚本已启动,输出文件是C: logs TestLog20110105-1140.txt

测试这条消息是否被记录

********** Windows PowerShell脚本结束时间:20110105114050


当我使用下面的脚本从另一台机器运行相同的脚本时,在日志文件中看不到任何消息

Invoke-command {powershell.exe -ExecutionPolicy Unrestricted -NoProfile -File C: in ll transcript-test.ps1} -computername box1 -credential $ credential get-credential

日志文件的内容:

********** Windows PowerShell脚本开始启动时间:20110105114201用户名:DOMAIN user计算机:BOX1(Microsoft Windows NT 5.2.3790 Service Pack 2)


********** Windows PowerShell脚本结束时间:20110105114201


无论如何,当远程调用时将脚本中的消息记录到日志文件中?

谢谢! Sanjeev


Invoke-command将你的代码执行到一个作业中,就我所知,一个没有控制台的线程,所以不需要转录。 对我而言,你得到的是绝对正常的。


以下内容将在抄本中捕获您的本地和远程详细消息

$VerbosePreference = "continue"
Start-Transcript -path c:temptranscript.txt 

Write-Verbose "here 1"

$job = Invoke-Command cbwfdev01 -ScriptBlock {

    $ErrorActionPreference = "Stop";
    $VerbosePreference = "continue";

    Write-Verbose "there 1";
    Write-Verbose "there 2";
    Write-Verbose "there 3";

} -AsJob 

Wait-Job $job | Out-Null

$VerboseMessages = $job.ChildJobs[0].verbose.readall()

ForEach ($oneMessage In $VerboseMessages) {Write-Verbose $oneMessage}

Write-Verbose "here 2"

Stop-Transcript
链接地址: http://www.djcxy.com/p/61081.html

上一篇: transcript using remoting

下一篇: Fiducial marker or camera pose estimation