How do you add close to a script after so many seconds if an option is not chose.
Example
Option 1 BLah Blah
Option 2 Blaaah Blahhhh
If one of the options is not chose after 5 seconds close the batch.
How to do this anybody?
Code: Select all
@ECHO OFF
CHOICE /C YN /N /T 7 /D N /M "[Y]es or [N]o? (Defaults to "No" in 7 seconds.)"
IF %ERRORLEVEL%==1 (
echo YES!
goto :break
)
IF %ERRORLEVEL%==2 (
echo NO!
goto :break
)
:break
This is pretty good too, it will show you the actual countdown:
Code: Select all
@ECHO OFF
setlocal enableDelayedExpansion
FOR /l %%N in (7 -1 1) do (
set /a "min=%%N/60, sec=%%N%%60, n-=1"
IF !sec! lss 10 set sec=0!sec!
CLS
CHOICE /C:YNX /M "Do you want me to say 'Hello world'? [Y/N] (!min!:!sec!) " /T:1 /D:X /N
IF NOT ERRORLEVEL 3 GOTO :break
)
:break
IF %ERRORLEVEL% == 1 (
echo HELLO WORLD.
)
IF %ERRORLEVEL% == 2 (
echo NO.
)
IF %ERRORLEVEL% == 3 (
echo Nothing was chosen.
)
Was looking into a semi-timer on XP. This sorta sucks, CHOICE, SLEEP and TIMEOUT are not included by default. I'm toying with the idea of using a counter:
pseudo script:
set x=0
:CNTPL:
set /a x+=1
if %x% EQU 9500 GOTO :WHATEVS:
GOTO :CNTPL:
I don't need something really precise, ideally just pause between 3-5 seconds. Counting to 9500 takes approximately 5 seconds on my current test machine. What all would affect that? CPU speed? Cores/Multiple Processorers?
pseudo script:
set x=0
:CNTPL:
set /a x+=1
if %x% EQU 9500 GOTO :WHATEVS:
GOTO :CNTPL:
I don't need something really precise, ideally just pause between 3-5 seconds. Counting to 9500 takes approximately 5 seconds on my current test machine. What all would affect that? CPU speed? Cores/Multiple Processorers?
Oh yeah, I don't want this limited to XP, but ideally would run on XP and 2000 without modding. I have seen solutions using PING, but that seems kinda cheesy.
This guy's netsh works well on XP:
https://www.robvanderwoude.com/wait.php
Still kinda a cheesy kludge though.
This guy's netsh works well on XP:
https://www.robvanderwoude.com/wait.php
Still kinda a cheesy kludge though.
Well I didn't know:
https://ftp.gnu.org/old-gnu/Manuals/wge ... .html#SEC5 (WGET manua):
https://ftp.gnu.org/old-gnu/Manuals/wge ... .html#SEC5 (WGET manua):
What's even funnier, I was trying to do something very similar to this:`-w seconds'
`--wait=seconds'
Wait the specified number of seconds between the retrievals. Use of this option is recommended, as it lightens the server load by making the requests less frequent. Instead of in seconds, the time can be specified in minutes using the m suffix, in hours using h suffix, or in days using d suffix. Specifying a large value for this option is useful if the network or the destination host is down, so that Wget can wait long enough to reasonably expect the network error to be fixed before the retry.
I guess it's a case of 'know thy tool'.
`--waitretry=seconds'
If you don't want Wget to wait between every retrieval, but only between retries of failed downloads, you can use this option. Wget will use linear backoff, waiting 1 second after the first failure on a given file, then waiting 2 seconds after the second failure on that file, up to the maximum number of seconds you specify. Therefore, a value of 10 will actually make Wget wait up to (1 + 2 + ... + 10) = 55 seconds per file. Note that this option is turned on by default in the global `wgetrc' file.