J'ai un fichier batch:
arp -s 192.168.1.254 xx-xx-xx-xx-xx-xx
ipconfig /flushdns
Comment puis-je exécuter ces deux commandes sous Windows XP toutes les 10 secondes?
cela fait 10 secondes. retard:
timeout /t 10
alors essayez ceci:
:loop
arp -s 192.168.1.254 xx-xx-xx-xx-xx-xx
ipconfig /flushdns
timeout /t 10
goto loop
Essaye celui-là:
:loop
arp -s 192.168.1.254 xx-xx-xx-xx-xx-xx
ipconfig /flushdns
ping localhost -n 11 > nul
goto loop
La commande ping s'exécutera pendant 10 secondes et toute la sortie sera redirigée vers le périphérique NUL, ce qui signifie que vous ne verrez aucune sortie de la commande ping. Cela fonctionne en effet comme le ferait une commande "sleep".
:top
arp -s 192.168.1.254 xx-xx-xx-xx-xx-xx
ipconfig /flushdns
sleep 10
goto top
Éditer: Comme mentionné dans les commentaires, SLEEP
ne sera pas disponible lors d'une installation normale. Vous aurez besoin de quelque chose comme le Kit de ressources Windows 2003 ou d'une autre astuce pour le simuler (l'astuce de ping mentionnée par Bruno), et des notes pour le faire peuvent être trouvées ici .
Vous pouvez utiliser les commandes for
et 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
)
Vous pouvez utiliser ping -n [secs+1] localhost >nul
pour attendre un certain temps en secondes.
Une solution plus précise lance un ping sur un hôte inexistant une fois et fixe le délai
ping 1.0.0.0 -n 1 -w 10000> nul
Mais cela génère du trafic parasite
Tricher:
Utilisez cette commande pour suspendre le lot pendant 10 secondes.
choix/n/t: c, <10>/c: cc
Maintenant, placez-le dans une boucle sans fin dans le lot et le tour est joué!
Installez Cygwin qui mettra sleep
et cron
à votre disposition (entre autres).