чет он так и не работает, добавил задание на запуск батника, щас вот посмотрел, у модема не было интернета, дождался запуска по расписанию, окно промигнуло,и все, зпрограмма для перезагрузки роутера не открылась, что делаю не так?(
Код:
@Echo Off
SetLocal
Set N=0
(0<count Set /P "N=") 2>nul
Ping ya.ru -n 2 1>nul&&Del /F /Q count 2>nul&&Exit /B 0
If %N% EQU 3 (
netsh interface set interface name="Guest" admin=DISABLED
ping 127.0.0.1 -n 12 1>nul
Start "" /D "D:\programs\nnBackup\sendemail\" /Wait "sendEmail.exe" -f мыло -t мыло -u тема -m Opyat vse slomalos! -s smtp.yandex.ru:25 -xu мыло -xp пароль -o message-charset=windows-1251 -q
) Else (
Start "" /D "D:\programs\bat" /Wait "autoTln.exe"
Set /A N+=1
Call Echo:%%N%%>count
)
для проверки добавил:
Код:
echo:1 test
(0<count Set /P "N=") 2>nul
echo:2 test
Ping ya.ru -n 2 1>nul&&Del /F /Q count 2>nul&&Exit /B 0
echo:3 test
запустил, результат был такой:
Код:
C:\Documents and Settings\Администратор>D:\programs\bat\1.bat
1 test
2 test
C:\Documents and Settings\Администратор>
при этом, команда пинг возвращает:
Код:
C:\Documents and Settings\Администратор>ping ya.ru
Обмен пакетами с ya.ru [87.250.250.203] с 32 байт данных:
Ответ от 192.168.10.1: Заданная сеть недоступна.
Ответ от 192.168.10.1: Заданная сеть недоступна.
Ответ от 192.168.10.1: Заданная сеть недоступна.
Ответ от 192.168.10.1: Заданная сеть недоступна.
Статистика Ping для 87.250.250.203:
Пакетов: отправлено = 4, получено = 4, потеряно = 0
(0% потерь)
Приблизительное время приема-передачи в мс:
Минимальное = 0мсек, Максимальное = 0 мсек, Среднее = 0 мсек
C:\Documents and Settings\Администратор>
мне кажется проблема здесь :
Код:
Ping ya.ru -n 2 1>nul&&Del /F /Q count 2>nul&&Exit /B 0
все понятно, условие не верно, пинг возвращает:
Код:
Пакетов: отправлено = 4, получено = 4, потеряно = 0
а эта чтука работает если получено 0
Код:
Ping ya.ru -n 2 1>nul&&Del /F /Q
т.е. надо двойную проверку, или, если пакеты не приходят обратно вообще или получаем ответ "Ответ от 192.168.10.1: Заданная сеть недоступна."