若要进一步配置作业,可使用作业选项的参数并定义作业触发器。

作业选项

使用 New-ScheduledJobOption 可创建新的作业选项对象。 此命令具有多个参数,可用于定义作业的选项,例如:

  • –HideInTaskScheduler,阻止作业在“任务计划程序”中显示。 如果未包括此选项,最终作业将在“任务计划程序”图形用户界面 (GUI) 中显示
  • –RunElevated,将作业配置为在提升的权限下运行
  • –WakeToRun,在作业计划运行时唤醒计算机

使用其他参数来配置在计算机空闲时运行的作业和其他选项。 许多参数与“任务计划程序”GUI 中的选项对应

使用以下命令创建新的选项对象并将其存储在变量中:

PowerShell复制

$opt = New-ScheduledJobOption –RequireNetwork –RunElevated -WakeToRun

如果不需要指定它的任何配置项,则无需创建选项对象。

作业触发器

作业触发器定义作业何时运行。 每个作业可以有多个触发器。 使用 New-JobTrigger 命令创建触发器对象。 有五种基本类型的触发器:

  • –Once 指定只运行一次的作业。 还可以指定 –RandomDelay,并且必须指定 –At 参数来定义作业何时运行。 此参数接受 System.DateTime 对象或可解释为日期的字符串。
  • –Weekly 指定每周运行的作业。 可指定 –RandomDelay,并且必须同时指定 –At 和 –DaysOfWeek 参数。 –At 采用日期和时间来定义作业何时运行。 –DaysOfWeek 采用一周中的某一天或多天来运行作业。 通常会用 –At 来指定时间并使用 –DaysOfWeek 定义作业应该运行的天数
  • –Daily 指定每天运行的作业。 必须指定 –At 并指定作业何时运行。 还可以指定 –RandomDelay
  • –AtLogOn 指定用户登录时运行的作业。 此类作业类似于登录脚本,不同之处在于它是在本地而非在域中定义。 可指定 –User 来限制触发作业的用户帐户,并指定 –RandomDelay 来添加随机延迟
  • AtStartUp 与 –AtLogOn 类似,不同之处在于它在计算机启动时运行作业。 这通常会在用户登录前运行作业。

例如,以下命令创建一个触发器,该触发器在当地时间每周一和周四下午 3:00 运行:

PowerShell复制

$trigger = New-JobTrigger -Weekly -DaysOfWeek Monday,Thursday -At '3:00PM'