在 Powershell 中,是否有办法停止服务,指定等待时间,然后重新启动该服务



我需要创建一个脚本来获取服务,停止它,并在重新启动服务之前等待 60 秒。我将合并哪些 Cmdlet?

我尝试使用"重新启动服务"cmdlet,因为帮助说明声称它旨在启动和重新启动给定的服务,但没有一个相关参数提供在重新启动服务之前设置指定时间的方法。

任何建议将不胜感激。谢谢!

你可以尝试这样的事情:

$serviceName="MyService";
$waitTime = New-TimeSpan -Minutes 1
$service = Get-Service -Name $serviceName 
$service.Stop()
$service.WaitForStatus("Stopped", $waitTime)
$service.Start()
$service.WaitForStatus("Running", $waitTime)

如果您愿意,也可以按显示名称查询服务。
您必须检查服务是否正在运行,否则 stop 将引发异常

最新更新