Solved

How to add wait period in batch file

Posted on 2010-09-15
20
955 Views
Last Modified: 2012-05-10
Hi

How do I add a waiting period of 10sec in my batch file? I want the batch file to execute the first line, then wait 10seconds before moving to the next line.
0
Comment
Question by:iamdieter
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 5
  • 4
  • +3
20 Comments
 
LVL 6

Expert Comment

by:JJClements
ID: 33683208
I think the easiest way is to grab the server 2003 resource kit and use sleep.exe:

http://www.microsoft.com/downloads/en/details.aspx?FamilyID=9d467a69-57ff-4ae7-96ee-b18c4790cffd&displaylang=en

You can use it to make the batch file sleep for x number of seconds.
0
 

Author Comment

by:iamdieter
ID: 33683241
Will try, thanks. So there is no wait command I can use instead?
0
 

Author Comment

by:iamdieter
ID: 33683278
I am currently using the ping command: ping -n 15 localhost
This does not look good when it shows ping xxxxxx, looks unprofessional
0
On Demand Webinar - Networking for the Cloud Era

This webinar discusses:
-Common barriers companies experience when moving to the cloud
-How SD-WAN changes the way we look at networks
-Best practices customers should employ moving forward with cloud migration
-What happens behind the scenes of SteelConnect’s one-click button

 
LVL 7

Expert Comment

by:marektech
ID: 33683334
SleepCMD is free and easy.

Download it from http://www.sleepcmd.com

To test create a bat file and use the following:

sleep 10
pause

Once the 10 seconds is up you will have to hit a key. Just tested it for you and it all works great.
0
 
LVL 6

Expert Comment

by:Inderjeetjaggi
ID: 33683357
You can try to use
Pause 5 seconds.
0
 
LVL 3

Expert Comment

by:Jofnn
ID: 33683423
Hi,

No need to download anything for this, you can achieve it by simply pinging the localhost for a bit... change the number to suit your needs :)

Jonathon

@ping.exe localhost -n 10 >NUL

Open in new window

0
 
LVL 43

Expert Comment

by:Steve Knight
ID: 33683471
You can use PING... just hide the output:

ping -n 11 127.0.0.1 >nul 2>&1

http://scripts.dragon-it.co.uk/links/batch-delay?OpenDocument


Steve
0
 

Author Comment

by:iamdieter
ID: 33683542
Sleep not working. I'm running the batch file from a shared drive on the server. Do I need to tell the batch where sleep.exe is installed?

I do not want to use PING.
0
 
LVL 3

Accepted Solution

by:
Jofnn earned 500 total points
ID: 33683574
Hi,

You can set a variable at the start:

SET SLEEP=\\server\share\sleep.exe

Which you can call by then using %sleep% 10

*-*-*-*-*-*-*-*-*-*
On a side-note, the ping localhost works very well and users do not see the output due to the >NUL on the line.  I use it in a lot of my scripts and I've never had any issues!
0
 
LVL 3

Expert Comment

by:Jofnn
ID: 33683592
Also - yes, you will need to tell it where to look as it will start to look where the script currently is... along with the Sys32 folder!  (hence why it would be better to set a variable at the start)
0
 
LVL 7

Expert Comment

by:marektech
ID: 33683594
If you go down the sleepCMD route I outlined above you can also hide the sleep output with the following command:

sleep 10 /quiet

Hope this helps iamdieter :)
0
 
LVL 43

Expert Comment

by:Steve Knight
ID: 33683614
Only issue with PING is when there is no interface up and running, i.e. in a standalone machine with no network, wireless or other connection. Otherwise works fine, use -n wih number of secs + 1 since it does one ping then waits a sec then the second etc.
0
 
LVL 7

Expert Comment

by:marektech
ID: 33683615
Try putting the sleep.exe in the same folder as the batch file.
0
 
LVL 3

Expert Comment

by:Jofnn
ID: 33683629
@dragon-IT

PING would still work if you used "localhost" though... as it's technically speaking to it's own NIC
0
 
LVL 43

Expert Comment

by:Steve Knight
ID: 33683667
Nope, not if there is nothing connected to it.  I use 127.0.0.1 which is the same as localhost as long as the entry is in your hosts table but if you have no interface up, i.e. no cable connected, no wireless or 3G connection up then there is no 127.0.0.1 and it may fail.

0
 
LVL 3

Expert Comment

by:Jofnn
ID: 33683701
We have a couple of standalones here, which have BAT files running on them (cleanup duties etc) and we use the command...

If there's no interfaces etc, the localhost then defaults back to the MAC of the NIC.
0
 
LVL 7

Expert Comment

by:marektech
ID: 33683810
Did you go with sleep.exe in the end from www.sleepcmd.com?
0
 
LVL 43

Expert Comment

by:Steve Knight
ID: 33684221
Yeah, bizarre choice of answer ... did you make a mistake there?
0
 
LVL 43

Expert Comment

by:Steve Knight
ID: 33684225
(Not that there is anything wrong with it I mean, just not crediting the other people who suggested it before your addition on that one!
0
 
LVL 43

Expert Comment

by:Steve Knight
ID: 33684244
Hmm, I see your comment now re: "I do not want to use PING."  .. your choice I suppose.... actually that is another way:

choice /T 10 >NUL
0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Using dates in 'DOS' batch files has always been tricky as it has no built in ways of extracting date information.  There are many tricks using string manipulation to pull out parts of the %date% variable or output of the date /t command but these r…
Being a system administrator some time we require to do things remotely, one of them is installing software. Here I am going to tell you how to install software through wmic (Windows management instrument console). I am not at all saying that this i…
In an interesting question (https://www.experts-exchange.com/questions/29008360/) here at Experts Exchange, a member asked how to split a single image into multiple images. The primary usage for this is to place many photographs on a flatbed scanner…

733 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question