У меня есть пакетный скрипт, который выглядит так:
sc stop myservice
sc start myservice
он выдает ошибку, потому что sc не ожидает остановки службы. Как перезапустить сервис с помощью скрипта?
У меня есть пакетный скрипт, который выглядит так:
sc stop myservice
sc start myservice
он выдает ошибку, потому что sc не ожидает остановки службы. Как перезапустить сервис с помощью скрипта?
Ответы:
Постер хочет убедиться, что служба остановлена, прежде чем пытаться перезапустить ее. Вы можете использовать цикл вывода «sc query», выполняя что-то вроде этого:
источник
Может быть, чего-то не хватает, но я все это время использую:
или короче:
источник
Умер просто с powershell:
Еще лучше, используя отображаемые имена:
Get-Help Restart-Service
для большегоисточник
Если это чисто для перезапуска службы, вы можете использовать
Однако, если вы хотите получить доступ к опциям sc, вы можете использовать команду start / wait
эта техника является более общим решением, которое может быть применено к любой команде.
источник
sc stop myservice
просто отправит команду останова и вернется до остановки службы. Вызов sc с помощью start / b не поможет.Чтобы выполнить тихий перезапуск какой-либо службы, которая запрашивает подтверждение об остановке (например, в качестве службы сервера), вы можете добавить / y в конец команды остановки.
Это было бы полезно для автоматического выполнения скрипта.
источник
Если вы хотите перезапустить отказавший сервис, вам не нужно запускать скрипт. В оснастке MMC сервисов щелкните правой кнопкой мыши сервис, выберите свойства, перейдите на вкладку восстановления. Здесь вы можете указать, какие действия вы хотите предпринять в случае остановки сервиса. Существует много гибкости. Вам понадобится сценарий, если вы пытаетесь остановить службу, что-то сделать, затем запустить сценарий, предварять командный файл
net stop "myserviceshortname"
и завершитьnet start "myserviceshortname"
В vbscipt немного больше кода для остановки службы и ее зависимых элементов:
Вот запуск службы и все, от чего это зависит (это должно быть знакомо)
источник
Вы можете использовать следующие команды:
источник