Perform a Sleep() in windows batch

Need a sleep() in Windows Batch? Here are the ways...

1. ping yourself!
SET SLEEP=ping 127.0.0.1 -n
%SLEEP% 11 > nul

2. awesome TIME calculation from here
    @ECHO OFF
    SETLOCAL EnableExtensions
    CALL :ProcDelay 200
    ECHO %TIME%
    GOTO :EOF

    :ProcDelay delayMSec_
    SETLOCAL EnableExtensions
    FOR /f "tokens=1-4 delims=:. " %%h IN ("%TIME%") DO SET start_=%%h%%i%%j%%k
        :_procwaitloop
        FOR /f "tokens=1-4 delims=:. " %%h IN ("%TIME%") DO SET now_=%%h%%i%%j%%k
        SET /a diff_=%now_%-%start_%
    IF %diff_% LSS %1 GOTO _procwaitloop
    ENDLOCAL & GOTO :EOF
    :EOF

3. windows2003 now provide "timeout" command.

0 comments:

Post a Comment

| More

Twitter Updates