PowerShell预定作业未在启动时运行

前端之家收集整理的这篇文章主要介绍了PowerShell预定作业未在启动时运行前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试创建一个在 Windows Server 2012 R2 Core上启动时运行的作业.作业运行连接到网络共享的脚本,然后安装位于该共享上的VHD.

脚本本身可以工作,当使用-RunNow参数注册时,作业将被触发并按预期运行.使用Start-Job Cmdlet运行作业也可以正常工作.

但是,作业不会像启动时那样在启动时触发.

我做了什么来创造这份工作:

$Trigger = New-JobTrigger -AtStartup  
$JobOptions = New-ScheduledJobOption -RunElevated -RequireNetwork  
Register-ScheduledJob -FilePath C:\Scripts\Test.ps1 -Name Test -Trigger $Trigger -ScheduledJobOption $JobOptions -RunNow

这样做后我可以清楚地看到它的结果.但是当重新启动服务器时,结果不存在,但是作业说它在重新启动后不久就运行了.

使用New-JobTrigger cmdlet创建启动触发器时,最好指定30秒或更长的随机延迟时间以避免启动时发生冲突.这也有助于确保工作成功的可能性更大.
$trigger = New-JobTrigger -AtStartup -RandomDelay 00:00:30

您还需要在重新启动并使用Get-Job cmdlet重新登录后检查作业的状态.

猜你在找的Windows相关文章