选项

提示用户从批处理程序中的单字符选项列表中选择一项,然后返回所选选项的索引。 如果未使用参数,选项 显示默认选项 YN

语法

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 指定选项区分大小写。 默认情况下,这些选项不区分大小写。
/吨 <timeout> 指定在使用由 /d指定的默认选择之前暂停的秒数。 可接受的值从 09999。 如果 /t 设置为 0,则返回默认选项之前,选项 不会暂停。
/d <choice> 指定在等待由 /t指定的秒数后使用的默认选择。 默认选项必须位于由 /c指定的选项列表中。
/米 <text> 指定要在选项列表之前显示的消息。 如果未指定 /m,则仅显示选择提示。
/? 在命令提示符下显示帮助。

注解

  • ERRORLEVEL 环境变量设置为用户从选项列表中选择的键的索引。 列表中的第一个选项返回一个值 1,第二个值为 2,依此等。 如果用户按下的键不是有效选择,选项 发出警告。

  • 如果 选择 检测到错误条件,它将返回 255 值。 如果用户按 CTRL+BREAK 或 CTRL+C,选择 返回 ERRORLEVEL0

注释

使用 ERRORLEVEL 批处理程序中的值时,必须按递减顺序列出它们。

例子

若要显示 YNC的选项,请在批处理文件中键入以下行:

choice /c ync

当批处理文件运行 选项 命令时,将显示以下提示:

[Y,N,C]?

若要隐藏 Y YNC的选项,但在批处理文件中键入以下行,继续键入以下行:

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

注释

如果使用 /n 参数,但不使用 /m,则 选择 等待输入时,不会提示用户。

若要显示前面示例中使用的文本和选项,请在批处理文件中键入以下行:

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

若要设置 5 秒的时间限制,并将 N 指定为默认值,请在批处理文件中键入以下行:

choice /c ync /t 5 /d n

注释

在此示例中,如果用户在五秒内未按某个键,选择 默认选择 N,并返回错误值 2。 否则,选项 返回与用户选择对应的值。