Renvoyer un message si ping > à xxxm/s [BATCH]

Résolu/Fermé
lorbre - Modifié par lorbre le 1/09/2016 à 20:39
 lorbre - 5 sept. 2016 à 22:29
Bonjour,

J'ai pour mission de trouver une commande permettant de renvoyer le message OK si le temps réponse de ping est en dessous de 100m/s et le message KO si le temps de réponse est supérieur.

J'ai déjà fais la commande suivante qui permet de récupérer le résultat de la commande mais il me faudrait pouvoir exploiter la chose et je ne vois pas comment faire...

ping -t -w 100 192.168.xxx.xxx > tstping.txt


Si vous avez une autre solution, je la lirai volontiers.

Merci de votre aide.

<config>Windows 7

2 réponses

Utilisateur anonyme
1 sept. 2016 à 23:13
Ceci devrait te satisfaire:

@echo off
setlocal
set IP=www.google.com

for /f "tokens=5" %%a in ('ping -n 1 %IP% ^| find /i "TTL"') do set PingTime=%%a
if "%PingTime%"=="" (
set PingTime=-1
set PingMsg=KO
goto log
)
set PingTime=%PingTime:~6%
set PingTime=%PingTime:ms=%

echo %PingTime%
set /a PingTime=%PingTime% + 0

if %PingTime% GTR 100 (set PingMsg=KO) else (set PingMsg=OK)

:log
echo [%date% %time%] %IP% %PingTime%ms %PingMsg% >> testping.log
1
Merci beaucoup ZeNairolf !
0