You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PowerShell中创建带开机启动延迟的任务计划程序任务

问题原因

New-ScheduledTaskTrigger cmdlet 提供的 -RandomDelay 参数仅对定时类触发(每日、每周、单次触发等)生效,-AtStartup 开机触发类型的固定延迟配置对应触发器对象的独立Delay属性,和RandomDelay属于不同的配置字段,因此直接传-RandomDelay参数不会生效。
另外你代码里的New-SchedulerTaskTrigger属于笔误,正确的cmdlet名称是New-ScheduledTaskTrigger。

正确配置方案

要给开机启动类的计划任务配置和GUI「延迟任务时间」一致的效果,手动修改开机触发器的Delay属性即可,属性值需要遵循ISO 8601时间格式:

  • 30秒对应PT30S
  • 1分钟对应PT1M
  • 1小时对应PT1H

完整示例代码如下:

$triggers = @()
# 配置开机启动后延迟30秒触发
$startupTrigger = New-ScheduledTaskTrigger -AtStartup
$startupTrigger.Delay = "PT30S"
$triggers += $startupTrigger
# 每日触发任务的RandomDelay配置保持原有写法即可正常生效
$triggers += New-ScheduledTaskTrigger -Daily -At "00:00" -RandomDelay "00:00:30"
补充说明
  • 如果需要开机触发的随机延迟效果,可以同时设置Delay属性和RandomDelay属性,二者叠加后会在「Delay时长 到 Delay+RandomDelay时长」的区间内随机选择时间触发。

内容的提问来源于stack exchange,提问作者Purclot

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 07:36:03