我不確定sc start
和start-service
之間的差異,但您可以使用wmi來做你想做的事情。
要啓動服務:
(get-wmiobject win32_service -filter "name='the service'").startService()
要停止服務:
(get-wmiobject win32_service -filter "name='the service'").stopService()
要檢查服務的狀態,你可以使用:
get-wmiobject win32_service -filter "name='the service'"
它會顯示你的狀態和啓動模式。如果您想自動執行此操作,您可以使用以下內容。
要停止服務:
if ((get-wmiobject win32_service -filter "name='the service'").state -eq "Running") {
(get-wmiobject win32_service -filter "name='the service'").stopService()
} # Stops the service if it is running
要啓動服務:
if ((get-wmiobject win32_service -filter "name='the service'").state -eq "Stopped") {
(get-wmiobject win32_service -filter "name='the service'").startService()
} # starts the service if it is stopped
我敢肯定,你可以修改那些滿足您的需求。
我喜歡使用wmi的原因是能夠指定-computername
和-credentials
。它使得它可以訪問遠程系統,並在您擁有非域系統時進行身份驗證。希望有所幫助。祝你有美好的一天!
'PS> CMD - %/ C SC查詢wsearch' - %=旁路解析器,只是其附加到任何CMD解析爲, cmd/c是運行命令並退出 – evilSnobu