Possible Duplicate:
I am trying to write a batch script and trying to wait 10 seconds between 2 function calls. The command:
sleep 10
Does not make the batch file wait for 10 seconds.
I am running Windows XP.
Note: This is not a complete duplicate of Sleeping in a batch file as the other question is about also about python, while this is about windows batch files.
I actually found the right command to use.. its called timeout: http://www.ss64.com/nt/timeout.html
What about:
You can ping an address that surely doesn't exist and specify the desired timeout:
And since the address does not exists, it'll wait 10,000 ms (10 seconds) and returns.
-w 10000
part specifies the desired timeout in milliseconds.-n 1
part tells ping that it should only tries once (normally it'd try 4 times).> nul
part is appended so the ping command doesn't output anything to screen.You can easily make a sleep command yourself by creating a sleep.bat somewhere in your PATH and use the above technique:
NOTE: The 192.0.2.x address is reserved as per RFC 3330 so it definitely will not exist in the real world. Quoting from the spec:
You'd better ping 127.0.0.1. Windows ping pauses for one second between pings so you if you want to sleep for 10 seconds, use
This way you don't need to worry about unexpected early returns (say, there's no default route and the 123.45.67.89 is instantly known to be unreachable.)
Well, does
sleep
even exist on your Windows XP box? According to this post: http://malektips.com/xp_dos_0002.htmlsleep
isn't available on Windows XP, and you have to download the Windows 2003 Resource Kit in order to get it.Chakrit's answer gives you another way to pause, too.
Try running
sleep 10
from a command prompt.I used this