Я хочу сделать довольно простой [y/n] вопрос через пакет.

Могу ли я заставить его ждать менее секунды, прежде чем он автоматически выберет выбор по умолчанию? Что-то вроде

choice /d Y /t .5

1 ответ1

0

Из 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.

Так как они говорят в полных "секундах", вы должны выбрать целое число от 0 до 9999; Вы не можете использовать доли секунды (в таких случаях они обычно запрашивают миллисекунды).

Но вы можете использовать 0, чтобы запросить отсутствие задержки, что должно сделать его максимально быстрым.

choice /T 0 /D Y

Примечание: это было проверено в Windows 7, ваша версия Choice.exe может отличаться. ;)


Полная помощь для 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."

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .