在 Windows 2008 Server 上,我有一个计划任务,该任务配置为在任务失败时重新启动。如果命令成功,一切都会正常工作。
但是,如果命令运行并返回失败退出代码(非零),则任务不会重新启动。
我是不是漏掉了什么?如果命令返回失败代码,我该如何让任务重新启动?这难道不是“失败时重新启动”设置应该做的吗?
更新
看起来这是设计使然。“失败时重新启动”设置似乎意味着如果任务调度程序由于某种原因无法启动操作命令(例如登录失败、ACL 问题等),则重新启动。如果命令成功启动,任务调度程序将认为它成功,它不关心退出代码。
我猜想解决这个问题的一个方法是将命令包装在脚本中,如果失败则重试逻辑。或者按照某人的建议使用不同的调度程序。
答案1
据我所知,这是设计好的行为。我从来没有能够让它继续下去。我建议使用更好的任务调度程序(即视觉控制或类似)或将您的任务设置为作为服务运行。
任务调度程序 2.0 更好,但我认为如果作业从未成功,它仍然会死机......所以如果你告诉它重试 100 次,并且它无法使其工作,它下次就不会再试了。