我正在调整一个WinXP批处理文件,它使用AT命令来安排一些交互式的、持续时间相当长的活动(然后杀死它们将产生的进程),以使用Win7 7版本的SCHTASKS (因为Win7中的AT不再支持/interactive标志),例如翻译。
at 00:59 /interactive /every:Monday "h:\bin\scrape.bat"
at 03:02 /interactive /every:Monday "h:\bin\kill_scrape.bat"
这样的事情:
schtasks /Create /TN SCRAPER /IT /ST 00:59 /K /ET 03:02 /ST: 04:02\
/SC WEEKLY /D MON /TR "h:\bin\scrape.bat"...which看起来更简单,因为它将直接使用调度程序来终止预定的活动(如果我理解/K如何与/ET或/DU一起工作的话)。以上操作正常,但任务重复,默认间隔为10分钟。有了/RI选项,我可以给它一个最多122 minutes...but的重复间隔,然后它仍然可以在{122}-minute上重复,我想,我不希望that...and有很多行要翻译,而且我的elisp还不够好,无法从所有的任务持续时间中减去一分钟。SCHTASKS中是否有任何避免重复预定任务的选项?非常感谢。
发布于 2013-12-08 12:15:26
我相信你需要的是一个时间表选项(/SC)。有效的时间选项是daily,weekly monthly,'minute',‘逐时’,有明显的效果。
如果您想要精确地运行任务一次,跨越所有时间,/SC once将完成这一任务。添加/Z选项也会为您删除任务。
如果这些选项中没有一个完全适合您的需要,您应该能够使用/RI (运行间隔)开关来设置您希望任务在之后重复的确切分钟数。我不知道XP上的最大间隔是多少,但它至少应该是一天,而windows 7的最大间隔是599940分钟,也就是416天。
你想要的一个例子是:
schtasks /Create /TN SCRAPER /IT /ST 01:00 /ET 03:01 /K /SC WEEKLY /D MON /TR "h:\bin\scrape.bat"
schtasks /Create /TN ender /IT /ST 3:00 /K /SC WEEKLY /D MON /TR "h:\bin\end.bat"其中,scrape.bat是初始程序,而end.bat杀死了所有进程。
发布于 2021-04-07 11:11:45
使用/RI 0禁用重复任务
https://stackoverflow.com/questions/16126115
复制相似问题