使用schtasks.exe将任务的开始时间更改为1小时

时间:2013-03-06 16:49:50

标签: windows batch-file cmd scheduled-tasks schtasks.exe

是否可以将Windows Server 2003计算机中计划任务的开始或运行时间移动1小时,而无需使用schtasks命令的/ ST参数对时间进行硬编码?我也不想使用计划任务GUI,因为它是一个漫长的过程,用于许多任务。

例如。如果任务A在上午8点运行而任务B在上午10点运行,我想分别将它们移动到上午9点和上午11点。如果不可能,请建议更好的方法。提前谢谢!

2 个答案:

答案 0 :(得分:1)

AFAIK schtasks没有提供相对于现有计划更改计划的方法。您可以从任务中查询当前计划,然后相应地进行修改:

setlocal EnableDelayedExpansion

for /f "tokens=5" %%t in (
  'schtasks /query /tn foo /fo list ^| find /i "next run time:"'
) do (
  if "%%t"="08:00:00" (
    schtasks /change /tn foo /st 09:00
  else if "%%t"="10:00:00" (
    schtasks /change /tn foo /st 11:00
  )
)

答案 1 :(得分:0)

无法使用schtask.exe

您不能将/ st开关与/ change开关一起使用。你必须删除并创建。但是您可能会失去使用Schtask.exe无法看到的高级选项。基本上你需要先看看powershell来实现你想要的目标。