Batch file to restart a service. Windows [closed]
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago .
How can I restart a windows service using a .bat file? I am on windows server.
1 Answer 1
No net restart , unfortunately.
-
The Overflow Blog
Related
Hot Network Questions
Site design / logo © 2023 Stack Exchange Inc; user contributions licensed under CC BY-SA . rev 2023.3.3.43278
By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy.
Как написать батник для перезапуска службы
Работая с некоторыми программами, приходится вручную включать или отключать определенные службы. Например, если вы не хотите, чтобы фоновый процесс того или иного приложения не был запущен — вы его отключаете. Но когда это делается регулярно, не очень удобно каждый раз заходить в «Службы» операционной системы Windows 10 и Windows 11, искать ее в большом списке и вручную останавливать. В этой статье мы покажем, как создать скрип и как можно запустить и остановить службу Windows с помощью ярлыка BAT-файла?
Процесс не сложный и не нуждается в знаниях программирования. А для выполнения, нужно запустить текстовый редактор и прописать команду. Чтобы успешно создать такой bat-файл, внимательно следуйте нижеприведенной инструкции:
- запустите компонент «Службы» и откройте нужный для вас процесс (для примера мы выбрали фоновый процесс Hamachi)
- в графе «Имя службы», скопируйте название (в нашем случае это — Hamachi2Svc)
Созданный ярлык вы можете разместить в любое удобное место. Только будьте внимательны, чтобы не удалить основной bat-файл. Его расположение не должно изменяться после создания ярлыка. Теперь, для запуска или остановки нужной для вас службы — запустите ярлык и подтвердите запуск с правами администратора.
Надеемся, что данная инструкция помогла вам облегчить процесс отключения и включения служб в операционных системах Windows 10 и Windows 11. Другие статьи об использовании системы Windows вы найдете на нашем сайте в одноименном разделе
Как написать батник для перезапуска службы
Пишем BAT(батник) файл для запуска и остановки службы в Windows
Возникла необходимость автоматизировать для пользователей запуск и остановку определенной службы Windows. Самое просто на первый взгляд, создание батника или Bat файла Windows. Есть и другие варианты, но решил сделать именно через батник.
Вроде все не сложно, но как всегда в Windows все не так просто, или просто, но глупо.
1. Задача:
В системе есть программа, и её Бета-версия. Запуск основной, по ярлыку. Запуск Бета-версии только после запуска службы, по окончанию, отключение этой службы. Ничего сложного нет, зайти в службы и в зависимости от задачи «включить/выключить». Но вот для некоторых сотрудников это целая проблема. Поэтому пишем батник!
2. Структура батника. После поиска структуры батника, пришел к этому варианту:
3. Меняем отражение расширений файлов. По умолчанию в Windows не отражаются расширения файлов. Правим на примере Windows 10:
— открываем любую папку;
— вверху вкладка «Вид», «Параметры», «изменить параметры папок и поиска»;
— вкладка «Вид», спускаемся до поля «Скрывать расширения для. » — снимаем галку.
Теперь файлы, в частности на рабочем столе имеют вид (на примере TXT файла):
Было «Файл», Стало «Файл.txt»
4. Создаем файл батника. Создаем «txt» файл и переименовываем его в «Запуск службы.txt». Открываем, пишем наш Bat файл:
net start [имя службы в Windows] |
Где взять имя службы? Открываем службы, находим нужную, открываем и смотрим поле «Имя службы»:
В итоге у нас будет:
net start AtolLicSvc(Если служба AtolLicSvc, у вас ваш вариант) |
Сохраняем и переименовываем файл с «Запуск службы.txt» в «Запуск службы.bat«
5. Проверяем работу службы. Казалось бы все! Но нет! Это же Windows! Выскакивает окно запуска службы и пропадает. А служба как спала так и спит. Что не так? Все дело в правах админа. Вроде не сложно, но пояснять сотрудникам, запускайте с правами админа, слишком сложно для их понимания! Читаем по быстрому инфу «как запустить bat файл от имени админа автоматический?», ответ:
ничего сложного.
— «правой кнопкой мыши на файле», «свойства»;
— вкладка «ярлык», . эмм. а где она? О_о
6. Вносим правки, создаем ярлык
Логично, вкладки нет, это не ярлык! Создаем из нашего батника «Запуск службы.bat» «Ярлык»: убираем батники подальше от рук пользователей, допустим на диск D. Правой кнопкой мыши на батнике: «отправить», «рабочий стол (создать ярлык)». И вот уже на ярлыке:
— «правой кнопкой мыши на ярлыке», «свойства»;
— вкладка «ярлык», кнопка «Дополнительно»;
— ставим галку «запуск от имени администратора».
7. Повторный запуск службы через BAT файл.
После этих манипуляций, если запустить ярлык «Запуск службы.bat — ярлык», служба стартует, согласно структуре в файле «net start AtolLicSvc»
Для батника который будет останавливать службу, все тоже самое. И да, вариантов решения задачи много, спорить не буду, но описал вариант решения который применил сам.
Запуск службы windows по расписанию
Как сделать автоматический запуск(перезапуск) службы windows по расписанию? С таким вопросом я столкнулся совсем недавно, участвуя в одном из проектов по своей работе. Решение оказалось достаточно простым.
Настройка автоматического запуска или перезапуска службы осуществляет в два простых шага:
- Шаг 1 — создать сценарий запуска/перезапуска службы.
- Шаг 2 — создать задачу и настроить расписание ее выполнения.
Создание сценария для службы
Сценарий запуска/перезапуска службы представляет собой обычный батник (bat-файл), который будет содержать команды:
1. Для запуска службы
2. Для перезапуска службы
Пример файла перезапуска службы windows
В качестве примера использована служба KMService.
Итак, создаем батник (bat-файл) с командами для перезапуска службы, который будет содержать две строки:
Для обеспечения автоматического выполнения сценария перезапуска службы по расписанию: создается специальная задача, которая будет выполнять сценарий (запускать батничек).
Создание задачи в windows
Для создания задачи необходимо перейти в «Панель управления», кликнув в меню «Пуск» на пункт «Панель управления».
Далее, переходим в раздел «Администрирование».
В разделе «Администрирование» необходимо выбрать пункт «Планировщик заданий».
В окне «Планировщик заданий» кликаем правой кнопкой мыши на «Планировщик заданий» и выбираем пункт меню «Создать задачу».
В окне «Создание задачи» указываем Имя задачи, ставим галочку «Выполнить с наивысшими правами» и переходим на вкладку «Триггеры».
На вкладке «Триггеры» отображаются задаются условия запуска задачи. Для того чтобы создать расписание задачи перезапуска службы нажимаем на кнопку «Создать».
Заполняем параметры расписания задачи по перезапуску службы windows и нажимаем кнопку «Ок».
После создания расписания запуска задачи, необходимо указать наш сценарий(батничек), который должен выполнятся по расписанию. Для этого, переходим на вкладку «Действия» и нажимаем кнопку «Создать».
В окне «Создание действия» выбираем действие — «Запуск программы». После этого, нажимаем на кнопку «Обзор», ищем и выбираем наш файл со сценарием и нажимаем на кнопку «Ок».
И наконец, в окне «Создание задачи» нажимаем на кнопку «Ок».
Готово! Если все было сделано правильно, то задача будет выполняться по расписанию и будет перезапускать выбранную службу windows.
Batch file to restart a service. Windows [closed]
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago .
How can I restart a windows service using a .bat file? I am on windows server.
1 Answer 1
No net restart , unfortunately.
-
The Overflow Blog
Related
Hot Network Questions
Site design / logo © 2022 Stack Exchange Inc; user contributions licensed under CC BY-SA . rev 2022.12.16.43123
By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy.
Пишем BAT(батник) файл для запуска и остановки службы в Windows
Перезагрузка Windows через командную строку — Выключение/Перезагрузка из командной строки — Как перезагрузить компьютер из командной строки
Перезагрузка/Выключение компьютера средствами командной строки — иногда очень полезная процедура.
Перезагрузить/выключить компьютер можно различными способами.
Список команд для перезагрузки/выключения компьютера с помощью стандартных средств Windows
Как перезагрузить компьютер через командную строку, удаленный рабочий стол
Или «как перезагрузить компьютер из командной строки» Для перезагрузки через удаленный рабочий стол под Windows XP/Vista/7 можно выполнить команду: shutdown -t 0 -r -f
Параметры: -t 0 означает перезагрузка в течении «ноль» секунд,
-r перезагрузка а не выключение (reboot)
-f завершает все запущенные приложения (force, форсированное выключение с принудительным завершением программ)
Немедленная перезагрузка через командную строку:
Немедленное выключение через командную строку:
Пишем BAT(батник) файл для запуска и остановки службы в Windows
Возникла необходимость автоматизировать для пользователей запуск и остановку определенной службы Windows. Самое просто на первый взгляд, создание батника или Bat файла Windows. Есть и другие варианты, но решил сделать именно через батник.
Вроде все не сложно, но как всегда в Windows все не так просто, или просто, но глупо.
1. Задача:
В системе есть программа, и её Бета-версия. Запуск основной, по ярлыку. Запуск Бета-версии только после запуска службы, по окончанию, отключение этой службы. Ничего сложного нет, зайти в службы и в зависимости от задачи «включить/выключить». Но вот для некоторых сотрудников это целая проблема. Поэтому пишем батник!
2. Структура батника. После поиска структуры батника, пришел к этому варианту:
3. Меняем отражение расширений файлов. По умолчанию в Windows не отражаются расширения файлов. Правим на примере Windows 10:
— открываем любую папку;
— вверху вкладка «Вид», «Параметры», «изменить параметры папок и поиска»;
— вкладка «Вид», спускаемся до поля «Скрывать расширения для. » — снимаем галку.
Теперь файлы, в частности на рабочем столе имеют вид (на примере TXT файла):
Было «Файл», Стало «Файл.txt»
4. Создаем файл батника. Создаем «txt» файл и переименовываем его в «Запуск службы.txt». Открываем, пишем наш Bat файл:
net start [имя службы в Windows] |
Где взять имя службы? Открываем службы, находим нужную, открываем и смотрим поле «Имя службы»:
В итоге у нас будет:
net start AtolLicSvc(Если служба AtolLicSvc, у вас ваш вариант) |
Сохраняем и переименовываем файл с «Запуск службы.txt» в «Запуск службы.bat«
5. Проверяем работу службы. Казалось бы все! Но нет! Это же Windows! Выскакивает окно запуска службы и пропадает. А служба как спала так и спит. Что не так? Все дело в правах админа. Вроде не сложно, но пояснять сотрудникам, запускайте с правами админа, слишком сложно для их понимания! Читаем по быстрому инфу «как запустить bat файл от имени админа автоматический?», ответ:
ничего сложного.
— «правой кнопкой мыши на файле», «свойства»;
— вкладка «ярлык», . эмм. а где она? О_о
6. Вносим правки, создаем ярлык
Логично, вкладки нет, это не ярлык! Создаем из нашего батника «Запуск службы.bat» «Ярлык»: убираем батники подальше от рук пользователей, допустим на диск D. Правой кнопкой мыши на батнике: «отправить», «рабочий стол (создать ярлык)». И вот уже на ярлыке:
— «правой кнопкой мыши на ярлыке», «свойства»;
— вкладка «ярлык», кнопка «Дополнительно»;
— ставим галку «запуск от имени администратора».
7. Повторный запуск службы через BAT файл.
После этих манипуляций, если запустить ярлык «Запуск службы.bat — ярлык», служба стартует, согласно структуре в файле «net start AtolLicSvc»
Для батника который будет останавливать службу, все тоже самое. И да, вариантов решения задачи много, спорить не буду, но описал вариант решения который применил сам.
2 ответа
Это должно работать. Он устанавливает заголовок «title» для start.bat, а затем использует фильтр, чтобы найти это окно и закрыть его. / T также просто для закрытия дочерних процессов.
Дела по расписанию; запускайте это задание каждые пятнадцать минут (да, это много начинается с записей) и [X] остановите это задание, если оно длится дольше 15 минут.
Как перезапустить процесс с использованием.bat файла
Каждый раз, когда я случайно отключаю клавиатуру Logitech, процесс «LCore.exe» не отвечает. Я должен вручную завершить процесс и запустить его снова.
Я хочу создать файл.bat, чтобы сделать это для меня, но я не знаю, как это сделать.
Я попытался использовать это, но он, похоже, не работает.
Попробуйте добавить /f к taskkill, это заставит вас убить процесс.
Взлом для решения другой проблемы:
Ваша первая команда просит закрыть программу. Если он висит, он не может реагировать.
См. taskkill/? и см. параметр параметра /f для параметра силы.
Для не консольной программы сообщение WM_Close отправляется в главное окно (т. WM_Close Как если бы вы нажали красную кнопку X на панели заголовка). При использовании /f TerminateProcess используется (как остановка процесса на вкладке процесса диспетчера задач).
Приложение может запросить у пользователя подтверждение до уничтожения окна путем обработки сообщения WM_CLOSE и вызова функции DestroyWindow только в том случае, если пользователь подтверждает выбор.
По умолчанию функция DefWindowProc вызывает функцию DestroyWindow для уничтожения окна.
замечания
Функция TerminateProcess используется для безоговорочного завершения процесса. Состояние глобальных данных, поддерживаемых библиотеками динамической компоновки (DLL), может быть скомпрометировано, если TerminateProcess используется, а не ExitProcess.
TerminateProcess инициирует завершение и немедленно возвращается. Это останавливает выполнение всех потоков внутри процесса и требует отмены всех ожидающих ввода-вывода. Прекращенный процесс не может выйти до завершения или отмены всех ожидающих ввода-вывода.
Процесс не может препятствовать тому, чтобы он был прекращен.
В каких случаях использовать Reboot.bat
- если со временем скорость хэширования падает примерно на 1-1,5 m/hs на карту
- нечастые / разовые сбои видеокарты
- ваши фермы установлены удаленно и к ним затруднен доступ
Для того, что бы запустить перезагрузку, нужно отредактировать .bat файл с нужной монетой и допусать в него ключ -r 1
Команда -r 1 закрывает майнер и запускает файл «reboot.bat» («reboot.bash» или «reboot.sh» для версии Linux) в каталоге майнера (если файл существует, скачать каталог с этим файлом можно ниже), если произошел сбой какого-либо графического процессора.
Пример с ключом -r 1
Таким образом, батник с нужной Вам монетой выозовет файл «reboot.bat», если что-то пойдет не так с майнингом. Вы можете создать сами файл «reboot.bat» и выполнить некоторые действия, например, перезагрузить систему, если вы поместите туда следующую строку: «shutdown / r / t 5 / f».
Пример файла перезагрузки
Пример
Теперь посмотрите видеоурок.
Надеемся, что это решит Вашу проблему.
Проект Claymore представляет самые последние версии программного обеспечения (исправляет все ошибки и баги предыдущих версий)! Поэтому если у Вас старая версия, мы настоятельно советуем скачать последнюю версию Claymore’s по ссылкам ниже, так как с каждым выходом новой версии добыча Эфира становится выгоднее!
Последняя версия — v15.0 MD5: 549B215DDF355A633E2A7FD4B81E3CB2 *Claymore’s Dual Ethereum AMD+NVIDIA GPU Miner v15.0 — Windows.zip (Скачать для Linux)
Примеры использования утилиты shutdown
Если запустить утилиту shutdown с параметром /i, то на эране увидите примерно следующее (актуально для Windows 7):
При использовании отложенной перезагрузки:
Получим следующее уведомление на экране:
Если вы желаете отменить намеченную перезагрузку, то используйте команду:
Остановить и запустить службу с помощью пакетного или cmd-файла?
Как я могу написать сценарий bat или cmd, чтобы остановить и запустить службу надежно с проверкой ошибок (или дайте мне знать, что это не было успешным по какой-либо причине)?
14 ответов:
использовать SC (service control) команда, это дает вам гораздо больше возможностей, чем просто start & stop .
и
скажите вам, преуспели ли они или потерпели неудачу довольно ясно. Например
при запуске из пакетного файла, у вас есть доступ к ERRORLEVEL кода возврата. 0 указывает на успех. Все, что выше указывает на ошибку.
как bat-файл, error.bat :
вывод выглядит так:
Коды Возврата
изменить 20.04.2015
Коды Возврата:
команда NET не возвращает документированные коды возврата класса Win32_Service (Service not Active,Service Request Timeout и т. д.) и для многих ошибок просто возвращает Errorlevel 2.
вы можете использовать команду NET START, а затем проверить переменную среды ERRORLEVEL, например
отказ от ответственности: я написал это с самого начала, но я думаю, что это сработает.
вместо проверки кодов, это тоже работает
Я создал свой личный пакетный файл для этого, мой немного отличается, но не стесняйтесь изменять, как вы считаете нужным.
Я создал этот некоторое время назад, потому что мне было скучно и хотелось сделать простой способ для людей, чтобы иметь возможность вводить конец,начиная с,остановка или настройка для авто. Этот файл BAT просто запрашивает, чтобы вы ввели имя службы, и он сделает все остальное за вас. Я не понимал, что он был ища что-то, что указывало на какую-либо ошибку, я, должно быть, неправильно понял эту часть. Хотя обычно это можно сделать путем ввода >> output.txt в конце строки.
The %var% это просто способ для пользователя, чтобы иметь возможность ввести свой собственный сервис в этом, вместо того, чтобы идти изменить файл bat каждый раз, когда вы хотите, чтобы запустить/остановить другую службу.
Если я ошибаюсь, любой может чувствовать себя свободно, чтобы исправить меня на этом.
используя коды возврата от net start и net stop Мне кажется, что это лучший метод. Попробуйте взглянуть на это:чистый старт коды возврата.
синтаксис всегда меня достает. так.
здесь явно показано, как добавить строку в пакетный файл, который убьет удаленную службу (на другой машине) если вы являетесь администратором на обеих машинах, запустите .bat как администратор, и машины находятся в одном домене. Имя машины следует за форматом UNC \myserver
в этом случае. p4_1 — это имя службы и отображаемое имя при просмотре свойств службы в Диспетчере служб. Вы должны используйте имя службы.
для вашего обслуживания ОПС наркоманов. обязательно добавьте свой код причины и комментарий! т. е. «4», который равен «запланирован» и комментарий «остановка сервера для обслуживания»
мы хотели бы думать, что «чистая остановка» остановит службу. К сожалению, реальность не такая уж черно-белая. Если службе требуется много времени для остановки, команда вернется до остановки службы. Вы не знаете, если вы отметите ошибки.
решение, похоже, заключается в циклическом поиске состояния службы до тех пор, пока оно не будет остановлено, с паузой каждый раз вокруг цикла.
но опять же.
Я вижу впервые служба занимает много времени, чтобы остановиться, а затем «чистая остановка» для последующей службы просто ничего не делает. Посмотрите на службу в диспетчере служб, и ее состояние по — прежнему «запущено» — без изменения на «остановку». Тем не менее, я могу остановить эту вторую службу вручную с помощью SCM, и она останавливается через 3 или 4 секунды.