【发布时间】:2013-03-29 23:03:25
【问题描述】:
powershell 3 中的新计划作业看起来很棒,但令我恐惧的是,我无法让它们工作。
Register-ScheduledJob -FilePath V:\scripts\testJob.ps1 -Name Test
$t = New-JobTrigger -At 6PM -Once
Add-JobTrigger -Trigger $t -Name Test
我从来没有看到任何错误或任何东西,但脚本没有执行。如果我打开任务计划程序,我可以看到该作业并且它说它“运行”。但在历史上有一个“动作完成”与
Task Scheduler successfully completed task "\Microsoft\Windows\PowerShell\ScheduledJobs\Test" , instance "{a117256e-c3f2-42a7-a290-f21aeb6b2260}" , action "StartPowerShellJob" with return code 1.
我已经尝试在任务调度程序中处理计划任务,但没有得到任何结果。有人有什么想法吗?
脚本看起来像这样:
$path = "C:\temp\jobbit.log"
Get-Date | Out-File -FilePath $path -Append
【问题讨论】:
-
您是否验证过您的脚本在手动调用时运行?脚本有什么作用?它需要管理员权限才能运行吗?
-
作业缓冲区历史记录中有任何内容吗?如果作业完全运行,则应该留下一个作业对象。您可以使用 receive-job 来查看输出缓冲区中是否有任何内容。
-
不要忘记 Import-Module PSScheduledJob 以便将计划的作业提供者挂接到作业基础结构中。否则,Get-Job 不会显示预定的作业。
-
脚本如下所示:Get-Date | Out-File -FilePath "C:\temp\jobbit.log" -Append;手动运行正常。我尝试将任务设置为提升运行。如果我做作业(在 ipmo psschedulejob 之后),它不会显示任何内容。
-
Powershell 或安全事件日志中是否有任何与作业开始事件一致的内容?