Есть ли способ иметь команду выбора и таймер одновременно?

#batch-file

#пакетный файл

Вопрос:

По сути, можете ли вы, чтобы эти два набора кода выполнялись на одном экране одновременно?

Это:

 @echo off
cls
choice /c 123 /n 
if %errorlevel% == 1 goto op1
if %errorlevel% == 2 goto op2
if %errorlevel% == 3 goto op3
  

И это:

 @echo off
:var
cls
set /a num=%num% 1
echo %num%
ping localhost -n 2 >nul
goto var
  

Таким образом, вверху будет таймер, но вы все равно сможете использовать команду.
Это также могло бы быть полезно, если бы существовал более эффективный таймер, который не требовал бы возврата к переменной.

Комментарии:

1. Откройте командную строку , запустите choice /? и прочитайте вывод справки. %SystemRoot%Systemchoice.exe (полное имя файла этой команды Windows ) поддерживает сам тайм-аут. Кстати: вы можете использовать после командной строки choice также goto op%errorlevel% и избежать трех if условий.

Ответ №1:

Введите choice /? , чтобы увидеть ваши параметры, поскольку у выбора есть опция тайм-аута. Правильный способ ожидания — либо choice , timeout , либо waitfor нет ping .

Получение справки

Для общей справки. Введите Help в командной строке. Для каждой команды указан тип help <command> (например help dir ) или <command> /? (например dir /? ).

Некоторые команды имеют вложенные команды. Например schtasks /create /? .

Справка NET команды необычна. Ввод net use /? — это краткая справка. Введите net help use для получения полной справки. То же самое относится и к корню — net /? это также краткая справка, используйте net help .

Ссылки в справке на новое поведение описывают изменения от CMD в OS / 2 и Windows NT4 до текущего CMD, который находится в Windows 2000 и более поздних версиях.