Войти

Показать полную графическую версию : [решено] скрипт cmd если хост не доступен по ip, то выключить определенные пк по сети


Pasha8921
20-10-2020, 13:45
Добрый день, прошу помощи, нужен скрипт cmd такого плана,
Скрипт выполняется на пк1: Если ПК2 не доступен по сети в течении 5 минут, то выключить ПК1 и другие определенные ПК по сети. Помогите пожалуйста.

Elven
20-10-2020, 14:11
Как проверяется доступность по сети (достаточно пинга, или должна быть доступна шара, или какой-то конкретный порт), какие средства управления доступны (чтобы выключить удаленный комп), откуда уверенность что "определенные ПК по сети" доступны на момент выключения и как поступать если они таки недоступны? Этот и многие другие вопросы будут заданы в процессе ответа на первый вопрос топика.

Pasha8921
20-10-2020, 16:18
Доступность по сети - достаточно пинга
выключить удаленный ПК - как то так "shutdown -s — t 300 -m \192.168.1.12"
как поступать если они не доступны - никак, просто отправить на IP команду (без обратной связи), если доступен , то пусть выключается.

какие средства управления доступны - какие могут быть средства управления, подскажите пожалуйста ?

Elven
20-10-2020, 17:23
какие могут быть средства управления »
если есть и достаточно shutdown -m - не вижу смысла искать что-то еще.
приблизительно так можно:
@echo off
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
if not exist result.log (echo 0 > result.log)
FOR /F %%i IN (result.log) DO (
if %%i LEQ 4 (
set /a sum=%%i+1
ping 127.0.0.1 | findstr -i TTL && (
echo 0 > result.log
) || (
echo !sum! > result.log
)
) ELSE (
echo 0 > result.log
echo shutdown -m ...)
)
Загнать в шедулер с запуском каждую минуту. Если пять минут подряд не достучался, то на шестой минуте... shutdown -m




© OSzone.net 2001-2012