我想我想要的更接近于服务,但我想知道是否可以通过计划任务来实现这一点。
我可以使用以下参数创建任务:
$trigger = New-ScheduledTaskTrigger -Once -At 7am -RepetitionInterval (New-TimeSpan -Minutes 5) -RepetitionDuration ([timespan]::MaxValue)
但是如果计算机在早上 7 点之后启动,那么该任务就永远不会启动,对吗?
无论计算机何时开启,我怎样才能完成每 5 分钟重复一次的任务?
答案1
除了使用,-Once -At
您还可以使用-AtStartup
或者-AtLogon
-AtStartup
$trigger = New-ScheduledTaskTrigger -AtStartup -RepetitionInterval (New-TimeSpan -Minutes 5) -RepetitionDuration ([timespan]::MaxValue)
-AtLogon
$trigger = New-ScheduledTaskTrigger -AtLogon -RepetitionInterval (New-TimeSpan -Minutes 5) -RepetitionDuration ([timespan]::MaxValue)
答案2
我使用下面的方法来达到想要的结果:
$T = New-ScheduledTaskTrigger -AtStartup
$RT = New-ScheduledTaskTrigger -Once -At 7am -RepetitionDuration (New-TimeSpan -Days 1) -RepetitionInterval (New-TimeSpan -Minutes 1)
$T.Repetition = $RT.Repetition
答案3
如果跳过 -RepetitionDuration,则默认为 Indefinite。