如何使用任务计划程序重新启动 Windows 服务

Posted

技术标签:

【中文标题】如何使用任务计划程序重新启动 Windows 服务【英文标题】:How to restart a windows service using Task Scheduler 【发布时间】:2016-07-18 11:49:58 【问题描述】:

最简单的方法是创建一个批处理文件:

NET stop <service name>
NET start <service name>

创建并测试批处理文件后,将其添加到 Windows 任务计划程序并以特定时间间隔运行它。这里的问题是,当 bat 文件丢失或损坏时,服务不会重新启动。那么,还有其他方法可以在特定时间间隔重新启动服务吗?

【问题讨论】:

【参考方案1】:

您可以简单地创建计划任务,而不是使用 bat 文件。大多数时候你只定义一个动作。在这种情况下,使用NET 命令创建两个操作。第一个停止服务,第二个启动服务。给他们一个STOPSTART 参数,后跟服务名称。

在本例中,我们重新启动 Printer Spooler 服务。

NET STOP "Print Spooler" 
NET START "Print Spooler"

注意:很遗憾,NET RESTART &lt;service name&gt; 不存在。

【讨论】:

很好的提示!根据服务的不同,我有时会在停止和启动之间添加一个timeout /T 3(其中 3 是秒数)。 仅供参考,“Print Spooler”的服务名称只是“Spooler”。 “Print Spooler”是显示名称。 @NateJ timeout 似乎没有任何影响。我尝试了从 10 到高达 120 的间隔,并且重启仍然是即时的。我怀疑它是并行运行的,并且启动只是顺序的,因为它是由服务停止排队的。 好提示@Kurt Van den Branden! @NateJ 你的超时提示同样适用于我在 Win2016 服务器上。为了安全起见,我添加了timeout /T 3 /NOBREAK 您也可以使用单个操作,例如powershell -command "Restart-Service Spooler"

以上是关于如何使用任务计划程序重新启动 Windows 服务的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 PowerShell 在系统重新启动后延迟 10 分钟在 Windows 任务计划程序中安排任务?

windows任务计划程序是怎么回事,有啥用途,该怎么设置??

如何让IIS定时自动重新启动

在Windows中啥是计划任务?

使用任务计划程序唤醒后,Windows 10 电脑在两分钟内重新进入睡眠状态

使用 Windows 任务计划程序打开 cmd 文件时执行但不启动服务器