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无法连接到wifi怎么办
文章浏览阅读2.2k次,点赞6次,收藏20次。在我们平时办公工作...
文章浏览阅读1k次。解决 Windows make command not found 和...
文章浏览阅读3.2k次,点赞2次,收藏6次。2、鼠标依次点击“计...
文章浏览阅读1.3w次。蓝光版属于高清版的一种。BD英文全名是...
文章浏览阅读974次,点赞7次,收藏8次。提供了更强大的功能,...