Поделиться через


вариант

Предложит пользователю выбрать один элемент из списка однозначных вариантов в пакетной программе, а затем возвращает индекс выбранного выбора. При использовании без параметров отображается вариант по умолчанию Y и N.

Синтаксис

choice [/c [<choice1><choice2><…>]] [/n] [/cs] [/t <timeout> /d <choice>] [/m <text>]

Параметры

Параметр Описание
/c <choice1><choice2><…> Указывает список создаваемых вариантов. Допустимые варианты включают a-z, A-Z, 0-9 и расширенные символы ASCII (128-254). Список по умолчанию — YN, который отображается как [Y,N]?.
/n Скрывает список вариантов, хотя варианты по-прежнему включены, а текст сообщения (если задан /m) по-прежнему отображается.
/cs Указывает, что выбор учитывает регистр. По умолчанию варианты не учитывает регистр.
/t <timeout> Указывает количество секунд, которые необходимо приостановить перед использованием выбора по умолчанию, указанного /d. Допустимые значения — от 0 до 9999. Если /t задано значение 0, выбор не приостанавливается перед возвратом выбора по умолчанию.
/d <choice> Указывает вариант по умолчанию, используемый после ожидания количества секунд, указанного /t. Выбор по умолчанию должен находиться в списке вариантов, указанных /c.
/m <text> Указывает сообщение, отображаемое перед списком вариантов. Если /m не указано, отображается только запрос выбора.
/? Отображает справку в командной строке.

Замечания

  • Переменная среды ERRORLEVEL имеет индекс ключа, который пользователь выбирает из списка вариантов. Первый выбор в списке возвращает значение 1, второе значение 2и т. д. Если пользователь нажимает клавишу, который не является допустимым выбором, звучит предупреждающий сигнал.

  • Если выбор обнаруживает условие ошибки, возвращается значение ERRORLEVEL255. Если пользователь нажимает клавиши CTRL+BREAK или CTRL+C, возвращает значение ERRORLEVEL0.

Примечание.

При использовании значений ERRORLEVEL в пакетной программе их необходимо указать в порядке уменьшения.

Примеры

Чтобы представить варианты Y, Nи C, введите следующую строку в пакетном файле:

choice /c ync

Следующая строка отображается, когда пакетный файл запускает команду выбора:

[Y,N,C]?

Чтобы скрыть варианты Y, Nи C, но отобразить текст Да, Нетили Продолжить, введите следующую строку в пакетном файле:

choice /c ync /n /m "Yes, No, or Continue?"

Примечание.

Если вы используете параметр /n, но не используете /m, пользователь не запрашивает, когда выбор ожидает входных данных.

Чтобы отобразить текст и параметры, используемые в предыдущих примерах, введите следующую строку в пакетном файле:

choice /c ync /m "Yes, No, or Continue"

Чтобы задать ограничение времени в пять секунд и указать N в качестве значения по умолчанию, введите следующую строку в пакетном файле:

choice /c ync /t 5 /d n

Примечание.

В этом примере, если пользователь не нажимает клавишу в течение пяти секунд, выбор выбирает N по умолчанию и возвращает значение ошибки 2. В противном случае возвращает значение, соответствующее выбору пользователя.