Skip to content

Удаленный запуск команды на компьютерах по списку

26.04.2012

Нужно срочно выполнить определенную команду на 200 компьютерах удаленно? Легко! Для этого потребуется psexec.exe, файл со списком IP-адресов и приведенный ниже скрипт. В этом примере производится обновление групповых политик: попробуйте не согласиться с тем, что иногда возникает ситуация, когда необходимо обновить GPO, и как можно быстрее.

Несмотря на возможность указать административный аккаунт в ключах утилиты psexec.exe, лучше всего запускать скрипт в cmd, запущенном уже с административными правами (Run as…).

executor.cmd
@echo off
set PingTimeout=600
set IPAddressesFile=iplist.txt
set ExecuteCommand=gpupdate /force
setlocal enabledelayedexpansion
for /f "tokens=* eol=;" %%i in (%IPAddressesFile%) do (
 ping -n 2 -w %PingTimeout% %%i > nul
 if !errorlevel! == 0 (
 psexec \\%%i -d "%ExecuteCommand%"
 ) else (
 echo %%i not reachable!
 )
)

Файл со списком IP-адресов можно сформировать, например, в Excel. Строки, начинающиеся с «;», не обрабатываются скриптом (например, это компьютеры VIP-пользователей, которые необходимо временно исключить из процедуры).

iplist.txt

172.16.100.10
172.16.100.11
;172.16.100.12
;172.16.100.13
172.16.100.14
172.16.100.15

Прежде чем послать команду удаленно, IP-адрес проверяется на доступность. Это немного ускоряет выполнение скрипта, — в противном случае psexec.exe ждет ответа от RPC удаленного компьютера до 60 секунд, в результате чего скрипт может выполняться очень долго.

Реклама

From → Cmd

Добавить комментарий

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

%d такие блоггеры, как: