Показать полную графическую версию : батник который бы выполнял пинг
strelec64
04-05-2015, 21:11
Всем привет,есть батник который выполняет пинг ip- адресов из блокнота.Но хотелось чтоб после выполнение пинга вышел блокнот с отчетом о пинге (например ping 192.168.1.1 - ping ок или ping 192.168.1.1 - ping no).Сам батник
@echo off
for /f "usebackq tokens=1*" %%i in ("cash.txt") do start "" cmd /c "title %%j& ping -n 4 %%i& pause>nul"
exit /b
Как его дописать?
megaloman
06-05-2015, 17:09
Вариант 1Echo Off
Cls
Set "Spis=Cash.txt"
Set "Log=Ping_To_Log.log"
Echo ==== %Date% %Time% =============================== >>"%Log%"
FOR /F "usebackq tokens=* delims=" %%p in ("%Spis%") Do Call :PingInLog %%p 2 512
GoTo :Eof
:PingInLog
Echo %1
ping %1 -n %2 -l %3` >nul 2>nul
If %Errorlevel%==0 (
Echo +++ %1 Yes Ping %Date% %Time%>>"%Log%"
) Else (
Echo --- %1 No Ping %Date% %Time%>>"%Log%"
)
Вариант 2Echo Off
Cls
Set "Spis=Cash.txt"
Set "Log=Ping_To_Log.log"
Echo ---- %Date% %Time% ------------------------------- >>"%Log%"
FOR /F "usebackq tokens=* delims=" %%p in ("%Spis%") Do Call :PingInLog %%p 2 512
GoTo :Eof
:PingInLog
Set U=-
Set U1=-
Set U2=..................
Echo %1
For /F "usebackq tokens=1,2,3,4* delims=," %%i in (`ping %1 -n %2 -l %3`) Do (
For /F "usebackq tokens=1,2,3*" %%a in ('%%i') Do (
If "%%a %%b"=="Обмен пакетами" Set U=%%a %%c %%d
)
For /F "usebackq" %%a in ('%%k') Do (
If "%%a"=="потеряно" Set U1=%%k
)
For /F "usebackq" %%a in ('%%k') Do (
If "%%a"=="Среднее" Set U2=%%k
)
)
Echo %U%%из %2.% %Date% %Time%>>"%Log%"
strelec64
12-05-2015, 23:05
Второй не работает.А можно сделать,чтоб по окончание выводился блокнот с результатом.
У меня в cash.txt записано
192.168.0.1 rout
192.168.0.2 komp1
А никак не получится чтоб в писалось
1 192.168.0.1 rout ОК Ping
2 192.168.0.2 komp1 No Ping
iccup.platoon@vk
12-05-2015, 23:14
В самый низ указанного кода:
start "" "%Log%"
strelec64
12-05-2015, 23:22
Он открывается в разных блокнотах.А нельзя в один?
iccup.platoon@vk
12-05-2015, 23:42
Нельзя =)
strelec64
12-05-2015, 23:48
Вот есть батник,но что то не работает
@echo off
for /f "usebackq tokens=1*" %%i in ("cash.txt") do (
start "%%j " cmd /c "<nul>%%i.txt set/p=%%i %%j -& ping -w 1000 %%i| >>%%i.txt (>&2 findstr/rc:"[0-9]: "&& echo ok|| echo no)"
call set x=%%i.txt+%%x%%
)
>nul (ping -n 16 ""& copy %x%nul "log.txt"/b)& del %x:+= %& start "" "log.txt"
exit/b 0
iccup.platoon@vk
12-05-2015, 23:57
Распаковывайте, запускайте.
файл cash.txt должен лежать рядом с батником.
Общее время ожидания после запуска бат-файла - 20 секунд
strelec64
13-05-2015, 00:06
Проверил,некорректно работает,в окне командной строке пишется "заданный узел не доступен",в блокноте отмечается что все ок
iccup.platoon@vk
13-05-2015, 00:09
Дайте файл cash.txt в прикреплении - посмотрим, что там не так.
strelec64
13-05-2015, 00:12
файл cash.txt
cash01 kacca01
cash02 kacca01
cash03 kacca01
192.168.111.1 router
8.8.8.8 komp
192.168.111.170 vesy delik
192.168.111.160 vesy faso
iccup.platoon@vk
13-05-2015, 00:14
cash01 kacca01
cash02 kacca01
cash03 kacca01
Замените имена на IP-адреса
strelec64
13-05-2015, 00:18
Заменил теперь
8.8.8.8 kacca01
8.8.8.1 kacca01
8.8.8.6 kacca01
192.168.111.1 router
192.168.111.170 vesy delik
192.168.111.160 vesy faso
Ве равно
192.168.111.160 vesy faso -ok
192.168.111.170 vesy delik -ok
192.168.111.1 router -ok
8.8.8.6 kacca01 -no
8.8.8.1 kacca01 -no
8.8.8.8 kacca01 -ok
vesy faso и vesy delik IP-адрес придуман
iccup.platoon@vk
13-05-2015, 00:55
Сделал себе файл cash.txt с одним заведомо не работающим сайтом:
iccup.com iccup
google.com gugl
ya.ru haha
garenaworld.com ne rabotaet
На выходе
garenaworld.com ne rabotaet -no
ya.ru haha -ok
google.com gugl -ok
iccup.com iccup -ok
Что-то странное... Замените в батфайле строку
>nul (ping -n 16 "" & copy %x%nul "log.txt"/b)& del %x:+= %& start "" "log.txt"
На
>nul (ping -n 16 "" & copy %x%nul "log.txt"/b)& start "" "log.txt"
Выполните батник, заархивируйте файлы с именами из cash.txt (они будут иметь вид %имя_из_cash_файла%.txt) и прикрепите полученный архив к сообщению.
strelec64
13-05-2015, 10:05
Вот архив
iccup.platoon@vk
13-05-2015, 13:05
Странно...
А вот эти:
192.168.111.160 vesy faso -ok
192.168.111.170 vesy delik -ok
если вручную пропинговать - каков результат?
strelec64
13-05-2015, 19:16
Вот скрин
strelec64
13-05-2015, 23:34
а может без списка,просто добавить в батник IP адреса
Molchune
14-05-2015, 08:42
4_strelec64
батники конечно хорошо, но потом окажется, "а как бы было хорошо видеть историю когда работало, а когда нет."
может подумаете над какой нить системой мониторинга?
strelec64
14-05-2015, 09:14
нет не нужно,можно как нибудь дописать (добавить адреса)
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.