Buenas compañeros. A ver si me podeis ayudar en un código en batch que por mucho que he "googleado" no me sale lo que quiero :/....

Quiero crear un batch en el que haga ping a una IP al menos diez veces ( ping url -n 10) pero que no se muestre en el Prompt. Una vez terminado el ping, quiero que se muestre un mensaje diciendo lo siguiente:

---> Si la media del ping es ≤ 134 ms: "Puedes navegar sin problemas"
--->Si la media del ping es ≥ 135 ms:"Espera a tener mejor conexión"

Es algo dificilillo a mis conocimientos pero se lo agradecería mucho si me ayudasen. Un saludo!!
There's no place like 127.0.0.1
No he tocado mucho batch pero buscando por google he podido ir montando un script que hace lo que quieres excepto que el ping se repita 10 veces. Además quiero recordarte que ping sirve para dominios, no URLs.
@echo off
cls
setlocal enableextensions
for /f "tokens=*" %%a in ('ping -n 1 google.es') do (set ms1=%%a)
for /f "tokens=9" %%G in ("%ms1%") do (set ms2=%%G)
SET ms3=%ms2:ms=%
echo Tu ping es de %ms3%
if %ms3% leq 135 echo Puedes navegar sin problemas
if %ms3% gtr 135 echo Espera a tener mejor conexión
endlocal
EDIT:
Ni se te ocurra llamar al script ping.bat si no quieres reinicar el PC
Ah se me olvidaba, para que haga el ping 10 veces simplemente en la línea 5 del código cambiar "-n 1" por "-n 10". Aparte le metí un "pause > nul" al final de todo para que no se cierre la ventana :D
There's no place like 127.0.0.1
parahacks94 escribió:Ah se me olvidaba, para que haga el ping 10 veces simplemente en la línea 5 del código cambiar "-n 1" por "-n 10". Aparte le metí un "pause > nul" al final de todo para que no se cierre la ventana :D
Probé con '-n 10' pero no mostró el resultado correcto Para el comando pause no hace falta el > nul. No lo puse porque yo lo lanzaba desde cmd en lugar de ejecutar el .bat.
Responder

Volver a “Dudas y Preguntas”