Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Батник на выключение компьютеров по сети.

Ответить
Настройки темы
CMD/BAT - Батник на выключение компьютеров по сети.

Новый участник


Сообщения: 17
Благодарности: 0

Профиль | Отправить PM | Цитировать


Доброго времени суток!

Я не силен в этих вещах, поэтому прошу помощи.

Подскажите как написать батник для принудительного выключения нескольких компьютеров в локальной сети (если это конечно возможно), при помощи команды shutdown /m \\10.x.x.x

Спасибо за помощь!

Отправлено: 20:17, 26-07-2010

 

Пользователь


Сообщения: 140
Благодарности: 92

Профиль | Отправить PM | Цитировать


Hrust2010,

Выключить все станции в домене:

Код: Выделить весь код
Echo on& Chcp1251 & CLS

Set "Domain=Mshome"

for /f %%a in ('"net view /domain:%Domain% | Find /i "\\""') ^
Do Shutdown /p /m %%a
pause
Выключить выборочно станции:

Код: Выделить весь код
Echo on& Chcp1251 & CLS
Set machine1="pc1"
Set machine2="pc2"
...
Set machine4="pc4"

for /f "tokens=2 delims==" %%a in ('set machine') ^
Do Shutdown /p /m \\%%~a
pause
Используя WSH (*.vbs)

Код: Выделить весь код
Dim OpSysSet, Flags
Dim IntErrlevel

  arrTargetComps = Array("Comp1","Comp2","Comp3")

     For Each strTargetComp In arrTargetComps

         Set OpSysSet = GetObject("winmgmts:{impersonationLevel=impersonate,(RemoteShutdown)}//" & strTargetComp ).ExecQuery("select * from Win32_OperatingSystem where Primary=true")


  ' 0-Logoff, 1-Shutdown, 2-Reboot, 4-Force
  ' 8-Power Off, 16-Force If Hung 

          Flags       =  1 ' Выключаем
          IntErrlevel =  0

          For Each OpSys In OpSysSet
              OpSys.Win32Shutdown Flags,IntErrlevel
          Next

      Next
Пара примеров для vbs:
http://gallery.technet.microsoft.com...1-eace6ff99bcd
http://gallery.technet.microsoft.com...1-7c30388c1adb

Последний раз редактировалось deepred, 26-07-2010 в 23:29.

Это сообщение посчитали полезным следующие участники:

Отправлено: 21:58, 26-07-2010 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 17
Благодарности: 0

Профиль | Отправить PM | Цитировать


Попробовал второй скрипт. Работает. Только есть один ньюанс.
Когда компьютер из списка станций уже рание выключен, батник на нем останавливается и долго обрабатывает. Можно ли избежать этого?

Спасибо!

Отправлено: 10:53, 27-07-2010 | #3


Пользователь


Сообщения: 140
Благодарности: 92

Профиль | Отправить PM | Цитировать


Hrust2010,

Вариант для расположения все станций в одном домене:
Код: Выделить весь код
Echo off & Chcp 866 & CLS
Set machine1="pc1"
Set machine2="pc2"
::...
Set machine4="pc4"
Set machine5="HPPAVILION-PC"

Set "Dmn=Mshome"

for /f "tokens=2 delims==" %%a in ('set machine') ^
Do for /f %%b in ('"net view /domain:%Dmn% | Find /i "\\""') ^
Do if "\\%%~a"=="%%~b" (Shutdown /m \\%%~a)

pause
Если PC расположены в разных доменах, то в команде Net View следует
применить ключ /Network

Последний раз редактировалось deepred, 28-07-2010 в 17:01.


Отправлено: 13:52, 27-07-2010 | #4


Новый участник


Сообщения: 17
Благодарности: 0

Профиль | Отправить PM | Цитировать


Что - то не так.

Домен я свой указал. после запуска выводит сообщение
machine "pc1" powered off
machine "pc1" powered off
machine "pc1" powered off
machine "pc1" powered off
........................................
machine "pc2" powered off
machine "pc2" powered off
machine "pc2" powered off
.................................

Хотя кокраз эти машины были включены.
И после отработки батника машины продолжают работать

Отправлено: 11:24, 28-07-2010 | #5


Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


А чем тебе не нравится команда "shutdown"?


shutdown -s -f -m \\"Имя 1-ого компа, можно IP" -t 03
shutdown -s -f -m \\"Имя 2-ого компа" -t 03
shutdown -s -f -m \\"Имя 3-ого компа" -t 03

Отправлено: 14:07, 04-08-2010 | #6


Новый участник


Сообщения: 10
Благодарности: 0

Профиль | Отправить PM | Цитировать


как можно удаленно перевести компьютеры в спящий режим?

Отправлено: 14:51, 25-01-2011 | #7



Moderator


Сообщения: 53461
Благодарности: 15501

Профиль | Отправить PM | Цитировать


Цитата base:
как можно удаленно перевести компьютеры в спящий режим?
С помощью PsShutdown
Код: Выделить весь код
psshutdown.exe \\имя_или_IP-адрес -d -t 0
или
Код: Выделить весь код
psshutdown.exe \\имя_или_IP-адрес -h -t 0
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:29, 25-01-2011 | #8


Новый участник


Сообщения: 10
Благодарности: 0

Профиль | Отправить PM | Цитировать


дело в том что этой командой необходимо гасить 4 компьютера при отключении электричества. программа гасит компьютеры по очереди.
когда один из компьютеров уже выключен, то программа пытается к нему подключится 1 минуту, при этом другие компьютеры не выключаются. в этом случает теряется слишком много времени.
как написать батник так чтобы команды на выключения выдавались всем компьютерам одновременно?

Отправлено: 04:47, 26-01-2011 | #9



Moderator


Сообщения: 53461
Благодарности: 15501

Профиль | Отправить PM | Цитировать


Цитата base:
программа пытается к нему подключится 1 минуту
Инструкцию почитайте, опция -n время_в_секундах

Цитата RTFM:
-n Specifies timeout in seconds connecting to remote computers.

Отправлено: 10:29, 26-01-2011 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Батник на выключение компьютеров по сети.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - Получение статуса компьютера через батник по сети. Serjione Скриптовые языки администрирования Windows 21 18-12-2009 18:29
Удаленное выключение компьютеров (группы компьютеров) в домене zonderz Программное обеспечение Windows 1 18-10-2007 09:49
удаленное выключение по сети - проблема Leo2 Сетевые технологии 2 19-12-2004 00:23
Выключение компов по сети (WinXP) Guest Сетевые технологии 4 01-04-2004 12:18
Выключение компьютера по сети Dark Capricorn Microsoft Windows 2000/XP 17 31-03-2004 17:40




 
Переход