Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Скрипт перезагрузки компьютера при отсутствии сети (http://forum.oszone.net/showthread.php?t=336429)

DeepWaters 28-08-2018 10:15 2828897

Скрипт перезагрузки компьютера при отсутствии сети
 
Всем доброго дня, помогите советом - нужен скрипт перезагрузки компьютера при отсутствии сети, на любом скриптовом средстве для для Windows, т.е. чтобы создать скрипт вставить его в планировщик для выполнения при запуске винды и пускай он потихоньку в фоне выполняется не отнимая у системы особенно ресурсов и процессорного времени, только скрипт обнаружил что инет отвалился - перезагрузка компьютера, но не сразу а чтобы подождал немного - вдруг инет появится, скажем минут 5, и перед тем как перезагружать компьютер сначала выполнить перезагрузку сетевого адаптера и посмотреть - вдруг сеть появится, тогда перезагрузка компьютера отменяется.
А то я в скриптовых языках администрирования Windows не силен, а вот возникла такая необходимость
В инете на эту тему находится многое но там в основном через bat файл это делается, хотелось бы через VBS Powershell или Autoit, так надежней будет, bat при долгой работе может неожиданно завершится по каким либо причинам да и постоянное фоновое выполнение bat файла потребляет больше ресурсов VBS Powershell или Autoit

Elven 29-08-2018 12:45 2829145

не представляю как cmd запускаемый раз в пять минут может неожиданно завершиться и/или отожрать много ресурсов.
Код:

ping 8.8.8.8 | find /i TTL && (
        if exist f.lag del f.lag
        ) || (
                if not exist f.lag (
                        echo nul >f.lag
                ) else (
                        del f.lag
                        shutdown -r -t 0 -f)
)

если при первой проверке 8.8.8.8 не пингуется создается файл f.lag, при повторном запуске не пингуется и f.lag есть - удаляем f.lag и ребутим машину, есть пинг - удаляем f.lag. короче - все просто, в шедулер добавлять с запуском каждые 5 минут от имени пользователя, у которого есть разрешение на запись/чтение в папке, в которой выполняется батник.
разумеется, можно сюда же добавить и
Цитата:

Цитата DeepWaters
перезагрузку сетевого адаптера »

правда тут придется уточнить что именно имеется ввиду.

subuday77 29-08-2018 16:34 2829188

Код:

@echo off
MODE CON COLS=60 LINES=10
title Connection check
:LOOP
1>nul (ping google.com -l 1 -n 1)
if %errorlevel% neq 0 call :reboot
timeout -T 10 /nobreak
cls
goto LOOP
 :reboot
timeout -T 300
1>nul (ping google.com -l 1 -n 1)
if %errorlevel%==0 goto LOOP
ipconfig /release
ipconfig /renew
ipconfig /flushdns
timeout -T 60
1>nul (ping google.com -l 1 -n 1)
if %errorlevel%==0 goto LOOP
 shutdown -f -r -t 30
exit



Время: 12:49.

Время: 12:49.
© OSzone.net 2001-