加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

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

发布时间:2020-12-14 00:32:02 所属栏目:Windows 来源:网络整理
导读:我正在尝试创建一个在 Windows Server 2012 R2 Core上启动时运行的作业.作业运行连接到网络共享的脚本,然后安装位于该共享上的VHD. 脚本本身可以工作,当使用-RunNow参数注册时,作业将被触发并按预期运行.使用Start-Job Cmdlet运行作业也可以正常工作. 但是,
我正在尝试创建一个在 Windows Server 2012 R2 Core上启动时运行的作业.作业运行连接到网络共享的脚本,然后安装位于该共享上的VHD.

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

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

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

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

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

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

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读