|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Помощь по: батник для управления сервисами |
|
CMD/BAT - [решено] Помощь по: батник для управления сервисами
|
Новый участник Сообщения: 13 |
Профиль | Отправить PM | Цитировать
Возникла необходимость мониторинга и запуска сервисов на удалённом PC, для решения данной проблемы был использован батник взятый с этого форума (ссылку к сожалению не смогу указать) автор батника registeruser1
Итак, скопировал я батник изменил то что мне надо было, понятное дело что изменил кодировку, расширение... запустил при выполнение батника вылезла ошибка (скрин прилагается). вопрос такой: что нужно было прописывать в переменной среде? P.S. Если важно: OS - Windows Server2003 код баника: @echo off echo. echo ******************************************************************************* @echo. echo PLEASE WAIT... SCANING SERVICES: @echo. echo ******************************************************************************* echo. setlocal enabledelayedexpansion set server=\\127.0.0.1 ping -n 1 %server:~2% 1>nul 2>nul || ( echo NO RESPOND FROM SERVER, EXITING... & pause & exit ) title Scanning set "sernum=100" for /f "tokens=1*" %%a in ('sc %server% query state^= all') do ( if /i .%%a equ .SERVICE_NAME: set "_servicen_=%%b" && title Scanning %server%: %%b if /i .%%a equ .DISPLAY_NAME: echo %%b | find /i "Windows" 1>nul && ( echo %%b set /a sernum += 1 set "_service_!sernum:~1!=!_servicen_!" set "_serviced_!sernum:~1!=%%b" ) ) :display TITLE WELCOME cls if errorlevel 0 @echo echo. echo ******************************************************************************* @echo. echo STARTING/STOPPED SERVICES MENU: @echo. echo ******************************************************************************* echo. for /f "tokens=2,3* delims=_=" %%a in ('set _service_') do ( for /f "tokens=4" %%s in ('sc %server% query %%b ^| findstr /r /b /c:" *STATE " ') do ( set "_displ_=!_serviced_%%a! " echo.%%a !_displ_:~0,58! %%s ) ) echo. TITLE WELCOME set "reply=0" set /p reply="Please select number for start/stop and press Enter (0=RESCAN): " set "reply=00%reply: =%" set "reply=%reply:~-2%" if %reply% == 00 goto :display if not defined _service_%reply% echo Service %reply% not defined & pause & exit sc %server% query !_service_%reply%! | findstr /r /b /c:" *STATE " | 1>nul find "RUNNING" && (1>nul sc %server% stop !_service_%reply%! & sc %server% config !_service_%reply%! start= disabled 1>nul 2>&1)||(sc %server% config !_service_%reply%! start= auto 1>nul 2>&1 & 1>nul sc %server% start !_service_%reply%!) goto :display |
|
Отправлено: 13:51, 05-04-2011 |
Новый участник Сообщения: 13
|
Профиль | Отправить PM | Цитировать просто интересно:
почему не запускается вот этот скрипт? ' Full Computer Name ' can be found by right-clicking My Computer, ' then click Properties, then click the Computer Name tab) ' or use the computer's IP address strComputer = "127.0.0.1" strDomain = "djs-klon" Wscript.StdOut.Write "Please enter your user name:" strUser = Wscript.StdIn.ReadLine Set objPassword = CreateObject("ScriptPW.Password") Wscript.StdOut.Write "Please enter your password:" strPassword = objPassword.GetPassword() Set objSWbemLocator = CreateObject("WbemScripting.SWbemLocator") Set objSWbemServices = objSWbemLocator.ConnectServer(strComputer, _ "root\cimv2", _ strUser, _ strPassword, _ "MS_409", _ "ntlmdomain:" + strDomain) Set colSwbemObjectSet = _ objSWbemServices.ExecQuery("Select * From Win32_Process") For Each objProcess in colSWbemObjectSet Wscript.Echo "Process Name: " & objProcess.Name Next P.S. просто решил попробовать выполнить уже готовый скрипт и все равно ошибка. |
Последний раз редактировалось cobra2029, 07-04-2011 в 15:17. Отправлено: 14:43, 07-04-2011 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 13
|
Профиль | Отправить PM | Цитировать перечитал еще несколько статей на тему: "VBS: WMI на удаленном компьютере"
но решение своей задачи не нашел. изучил 2 статьи по возможному решению ошибки "Разрешение отклонено "GetObject" ", проверил все какие только знал (и те которые узнал из статей) настройки DCOM, но и там безрезультатно. во общем, если кто знает как реализовать скрипт по моей задаче напишите пожалуйста, и желательно с подробными комментариями. Суть задачи (повторю для тех кому лень читать с самого начала): "что должен делать скрипт?" Скрипт должен узнавать какое состояние (запущен или остановлен) у сервисов на удаленном компе, и по команде пользователя запустить, или остановить сервис. Небольшое отступление: как я вижу выполнение этого скрипта: После запуска скрипта, пользователю выводится список всех сервисов (неважно запущенных или не запущенных) удалённый машины (в самом скрипте прописывается ip, user name, pw). После того как скрипт вывел список сервисов, пользователь нажимает кнопку (предположим "ОК") и ему предлагается ввести имя сервиса. Он нажимает снова "ОК", и появляется диалоговое окно где задаётся вопрос остановить или запустить. вот в принципе и вся задача. Буду очень благодарен тем кто поможет её решить. |
Отправлено: 17:33, 07-04-2011 | #12 |
Новый участник Сообщения: 13
|
Профиль | Отправить PM | Цитировать Задача решилась добавлением нового пользователя на сервер.
|
Отправлено: 10:11, 11-04-2011 | #13 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Новые элементы панели управления! Нужна помощь! | LP92 | Автоматическая установка Windows 2000/XP/2003 | 2 | 16-07-2010 14:23 | |
CMD/BAT - [решено] батник для управления сервисами | registeruser1 | Скриптовые языки администрирования Windows | 9 | 07-05-2010 13:24 | |
батник для NTOS | admart | Лечение систем от вредоносных программ | 2 | 17-10-2008 23:36 | |
Проблема с сервисами | CTEPBA | Microsoft Windows NT/2000/2003 | 1 | 19-01-2006 08:51 | |
батник для выключения win98 | mikesip | Microsoft Windows 95/98/Me (архив) | 4 | 21-12-2004 19:01 |
|