Правила Форума редакция от 22.06.2020 |
|
|
|
|
|
Опции темы | Опции просмотра | Language |
10.08.2017, 12:07 | #1 |
Пользователь
Пол: Регистрация: 14.03.2008
Сообщений: 95
Репутация: 7
|
Почему батник выдает неверный результат?
Почему батник выдает неверный результат?
Батник проверяет успешен ли пинг с несколькими IP. Если успешен выдает A3 07.08.2017 7:30:00,15 192.168.0.60 "????? ®? 192.168.0.60: ???«® ? ©?=32 ???¬?=39¬? TTL=128" A3 07.08.2017 7:30:00,20 192.168.0.61 "????? ®? 192.168.0.61: ???«® ? ©?=32 ???¬?=8¬? TTL=128" A3 07.08.2017 7:30:00,26 192.168.0.62 "????? ®? 192.168.0.62: ???«® ? ©?=32 ???¬?=38¬? TTL=128" A3 07.08.2017 7:30:00,32 192.168.0.63 "????? ®? 192.168.0.63: ???«® ? ©?=32 ???¬?=35¬? TTL=128" A3 07.08.2017 7:30:00,37 192.168.0.64 "????? ®? 192.168.0.64: ???«® ? ©?=32 ???¬?=15¬? TTL=128" A3 07.08.2017 7:30:04,90 192.168.0.65 "????? ®? 192.168.0.65: ???«® ? ©?=32 ???¬?=15¬? TTL=128" если не успешен должен выдавать A3 07.08.2017 7:30:04,49 192.168.0.60 "Error" A3 07.08.2017 7:30:00,20 192.168.0.61 "Error" A3 07.08.2017 7:30:00,26 192.168.0.62 "Error" A3 07.08.2017 7:30:00,32 192.168.0.63 "Error" A3 07.08.2017 7:30:00,37 192.168.0.64 "Error" A3 07.08.2017 7:30:04,90 192.168.0.65 "Error" фактически выдает при отсутствии связит с 192.168.0.65 A3 07.08.2017 7:30:00,37 192.168.0.64 "????? ®? 192.168.0.64: ???«® ? ©?=32 ???¬?=15¬? TTL=128" A3 07.08.2017 7:30:04,90 192.168.0.65 "????? ®? 192.168.0.64: ???«® ? ©?=32 ???¬?=15¬? TTL=128" а хотелось бы и ожидалось A3 07.08.2017 7:30:00,37 192.168.0.64 "????? ®? 192.168.0.64: ???«® ? ©?=32 ???¬?=15¬? TTL=128" A3 07.08.2017 7:30:04,90 192.168.0.65 "Error" То есть подставляется результат пинга предыдущей команды. Как исправить батник? Сам батник: @echo off set IP=192.168.0.60 @for /f "tokens=1*" %%i in ('ping -n 1 %IP% ^| findstr /i "TTL Превышен"') do set n="%%i %%j" @if defined n (goto log) set n="Error" @:log @echo %n% @echo A3 %date% %time% %IP% %n% >> ping_logA3.txt ping -n 1 127.0.0.1 > nul set IP=192.168.0.61 @for /f "tokens=1*" %%i in ('ping -n 1 %IP% ^| findstr /i "TTL Превышен"') do set n="%%i %%j" @if defined n (goto log) set n="Error" @:log @echo %n% @echo A3 %date% %time% %IP% %n% >> ping_logA3.txt ping -n 1 127.0.0.1 > nul set IP=192.168.0.62 @for /f "tokens=1*" %%i in ('ping -n 1 %IP% ^| findstr /i "TTL Превышен"') do set n="%%i %%j" @if defined n (goto log) set n="Error" @:log @echo %n% @echo A3 %date% %time% %IP% %n% >> ping_logA3.txt ping -n 1 127.0.0.1 > nul set IP=192.168.0.63 @for /f "tokens=1*" %%i in ('ping -n 1 %IP% ^| findstr /i "TTL Превышен"') do set n="%%i %%j" @if defined n (goto log) set n="Error" @:log @echo %n% @echo A3 %date% %time% %IP% %n% >> ping_logA3.txt ping -n 1 127.0.0.1 > nul set IP=192.168.0.64 @for /f "tokens=1*" %%i in ('ping -n 1 %IP% ^| findstr /i "TTL Превышен"') do set n="%%i %%j" @if defined n (goto log) set n="Error" @:log @echo %n% @echo A3 %date% %time% %IP% %n% >> ping_logA3.txt ping -n 1 127.0.0.1 > nul set IP=192.168.0.65 @for /f "tokens=1*" %%i in ('ping -n 1 %IP% ^| findstr /i "TTL Превышен"') do set n="%%i %%j" @if defined n (goto log) set n="Error" @:log @echo %n% @echo A3 %date% %time% %IP% %n% >> ping_logA3.txt ping -n 1 127.0.0.1 > nul |
Реклама: | Рекомендуем супермаркет KNS - принтер canon 3010 купить - Подарок каждому покупателю! | зубные импланты в москве | интеграции с вк видео | lufberg da16n220 | тх лебединое озеро |
21.09.2017, 12:35 | #2 |
Пользователь
Пол: Регистрация: 14.03.2008
Сообщений: 95
Репутация: 7
|
разобрался - сделал для каждого пинга свою переменную n - то есть n1, n2, n3 и т.д.
|