Powershell小技巧之使用WMI测试服务响应
测试一个服务是否有响应,有一个好办法。首先,使用WMI查询你指定的服务,WMI中可以返回构成它进程的ID。
functionTest-ServiceResponding($ServiceName) { $service=Get-WmiObject-ClassWin32_Service-Filter"Name='$ServiceName'" $processID=$service.processID $process=Get-Process-Id$processID $process.Responding }
接下来,这个进程对象将将告诉你这个进程是否有反应:
PS>Test-ServiceResponding-ServiceNameSpooler True
注意这个例子代码中假设它的服务是运行的,如果需要,你也可以检查下服务有没有运行。
本方法适合所有的powershell版本