Is there a way to have a choice command in batch files - and wait less then a second

0

1

I want to do a pretty simple [y/n] question via batch.

Can I make it wait less then a second before it automatically selects the default choice? Something like

choice /d Y /t .5

Jake Inc.

Posted 2012-06-23T13:42:55.930

Reputation: 57

Yes!... wait, I mean No!... Wait, what's the question? This is highly unclear and lacking lots of needed information. – Ƭᴇcʜιᴇ007 – 2012-06-23T13:49:01.287

1Iy sounds like he's trying to code some kind of shooter. In batch. Using Yes/No commands, and he wants a delay of under a second before the default choice is activated. Honestly sounds like a true path to madnes o0. – Journeyman Geek – 2012-06-23T15:42:22.807

Ahh, his little edit there helps a bunch. :) – Ƭᴇcʜιᴇ007 – 2012-06-23T16:49:21.360

Nah just a Worlds hardest Game thing, I can give it to you if you like. – Jake Inc. – 2012-06-23T22:54:14.090

Answers

0

From Choice.exe /?:

 /T    timeout       The number of seconds to pause before a default
                     choice is made. Acceptable values are from 0 to
                     9999. If 0 is specified, there will be no pause
                     and the default choice is selected.

Since they are speaking in full "Seconds", you have to pick an Integer from 0 to 9999; you can't use fractions of a second (they would usually ask for milliseconds in those cases).

But you can use 0 to request no delay, which should make it as fast as possible.

choice /T 0 /D Y

Note: This was checked on Windows 7, your version of Choice.exe may vary. ;)


Full help for choice.exe

C:\choice /?

CHOICE [/C choices] [/N] [/CS] [/T timeout /D choice] [/M text]

Description:
    This tool allows users to select one item from a list
    of choices and returns the index of the selected choice.

Parameter List:
   /C    choices       Specifies the list of choices to be created.
                       Default list is "YN".

   /N                  Hides the list of choices in the prompt.
                       The message before the prompt is displayed
                       and the choices are still enabled.

   /CS                 Enables case-sensitive choices to be selecte
                       By default, the utility is case-insensitive.

   /T    timeout       The number of seconds to pause before a defa
                       choice is made. Acceptable values are from 0
                       9999. If 0 is specified, there will be no pa
                       and the default choice is selected.

   /D    choice        Specifies the default choice after nnnn seco
                       Character must be in the set of choices spec
                       by /C option and must also specify nnnn with

   /M    text          Specifies the message to be displayed before
                       the prompt. If not specified, the utility
                       displays only a prompt.

   /?                  Displays this help message.

   NOTE:
   The ERRORLEVEL environment variable is set to the index of the
   key that was selected from the set of choices. The first choice
   listed returns a value of 1, the second a value of 2, and so on.
   If the user presses a key that is not a valid choice, the tool
   sounds a warning beep. If tool detects an error condition,
   it returns an ERRORLEVEL value of 255. If the user presses
   CTRL+BREAK or CTRL+C, the tool returns an ERRORLEVEL value
   of 0. When you use ERRORLEVEL parameters in a batch program, lis
   them in decreasing order.

Examples:
   CHOICE /?
   CHOICE /C YNC /M "Press Y for Yes, N for No or C for Cancel."
   CHOICE /T 10 /C ync /CS /D y
   CHOICE /C ab /M "Select a for option 1 and b for option 2."
   CHOICE /C ab /N /M "Select a for option 1 and b for option 2."

Ƭᴇcʜιᴇ007

Posted 2012-06-23T13:42:55.930

Reputation: 103 763