Stopping/Starting a remote Windows service and waiting for it to open/close

后端 未结 11 1563
广开言路
广开言路 2020-12-02 06:42

The top answer to this question tells me how to stop/start a remote service. Great. Now, all I need is to wait for the actual stop/start to complete. So, what I\'m looking f

11条回答
  •  孤城傲影
    2020-12-02 07:43

    What about powershell and WaitForStatus? Eg, the script below would restart SQL Server on a remote machine:

    $computer = "COMPUTER_NAME"
    $me = new-object -typename System.Management.Automation.PSCredential -argumentlist "DOMAIN\user", (convertto-securestring "password" -asplaintext -force)
    $restartSqlServer = { 
        $sqlServer = get-service mssqlserver
        $waitInterval = new-timespan -seconds 5
        if (-not ($sqlServer.Status -eq "Stopped")) {
            $sqlServer.Stop()
            $sqlServer.WaitForStatus('Stopped', $waitInterval) 
        }
        $sqlServer.Start()
        $sqlServer.WaitForStatus('Running', $waitInterval) 
    }     
    icm -ComputerName $computer -ScriptBlock $restartSqlServer -Credential $me 
    

提交回复
热议问题