Tengo un archivo por lotes:
arp -s 192.168.1.254 xx-xx-xx-xx-xx-xx
ipconfig /flushdns
¿Cómo puedo hacer estos dos comandos en Windows XP, cada 10 segundos?
Tengo un archivo por lotes:
arp -s 192.168.1.254 xx-xx-xx-xx-xx-xx
ipconfig /flushdns
¿Cómo puedo hacer estos dos comandos en Windows XP, cada 10 segundos?
Respuestas:
esto hace un 10 seg. retrasar:
timeout /t 10
así que prueba esto:
:loop
arp -s 192.168.1.254 xx-xx-xx-xx-xx-xx
ipconfig /flushdns
timeout /t 10
goto loop
/t
OR para presionar cualquier tecla - que se puede apagar enviando /NOBREAK
param :)
Prueba este:
:loop
arp -s 192.168.1.254 xx-xx-xx-xx-xx-xx
ipconfig /flushdns
ping localhost -n 11 > nul
goto loop
El comando ping se ejecutará durante 10 segundos y toda la salida se redirigirá al dispositivo NUL, lo que significa que no verá ninguna salida del comando ping. Funciona de hecho como lo haría un comando "dormir".
:top
arp -s 192.168.1.254 xx-xx-xx-xx-xx-xx
ipconfig /flushdns
sleep 10
goto top
Editar: como se menciona en los comentarios, SLEEP
no estará disponible en una instalación normal. Necesitará algo como el Kit de recursos de Windows 2003, o algún otro truco para simularlo (el truco de ping que Bruno menciona), y las notas para hacerlo se pueden encontrar aquí .
choice
que podría no estar incluido de manera estándar. Lo investigaré más.
Solución más precisa para hacer ping al host inexistente una vez y configurar el tiempo de espera
ping 1.0.0.0 -n 1 -w 10000> nul
Pero genera tráfico de parásitos
Puede usar el comando for
y ping
:
@echo off
for /l %%a in (0,0,0) do (
arp -s 192.168.1.254 xx-xx-xx-xx-xx-xx
ipconfig /flushdns
ping -n 11 localhost >nul
)
Puede usar ping -n [secs+1] localhost >nul
para esperar una cierta cantidad de tiempo en segundos.
goto
.
Engañar:
Use este comando para pausar el lote por 10 segundos
elección / n / t: c, <10> / c: cc
¡Ahora, colóquelo en un bucle interminable en el lote y listo!
choice
vino con XP y más tarde, o al menos no lo he visto en ninguna instalación reciente.
a continuación, es a la vez una forma fea y hermosa, un archivo por lotes de Windows: consume mucho tiempo de CPU para no hacer nada, pero hace lo que quiere y es muy agradable.
SETLOCAL EnableDelayedExpansion
::in seconds
set time2stop=10
:loop1
arp -s 192.168.1.254 xx-xx-xx-xx-xx-xx
ipconfig /flushdns
for /f "tokens=1,2* delims=:" %%i in ("!time!") do (
set hour1=%%i
set min1=%%j
set sec1=%%k
)
for /f "tokens=1* delims=," %%i in ("!sec1!") do (
set isec1=%%i
)
:loop2
for /f "tokens=1,2* delims=:" %%i in ("!time!") do (
set hour2=%%i
set min2=%%j
set sec2=%%k
)
for /f "tokens=1* delims=," %%i in ("!sec2!") do (
set isec2=%%i
)
set /a delta=3600*(!hour2!-!hour1!)+60*(!min2!-!min1!)+(!isec2!-!isec1!)
if !delta! geq !time2stop! goto end2
goto loop2
:end2
@echo on
goto loop1