如何使用任务计划程序重新启动 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
命令创建两个操作。第一个停止服务,第二个启动服务。给他们一个STOP
和START
参数,后跟服务名称。
在本例中,我们重新启动 Printer Spooler 服务。
NET STOP "Print Spooler"
NET START "Print Spooler"
注意:很遗憾,NET RESTART <service name>
不存在。
【讨论】:
很好的提示!根据服务的不同,我有时会在停止和启动之间添加一个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任务计划程序是怎么回事,有啥用途,该怎么设置??