java中choice用法,批处理中choice用法

在批处理程序中,提示用户作一选择。显示一指定的提示符并暂停等待用户从一组指定的键中作出选择。该命令只能用在批处理程序中。

有关ERRORLEVEL参数的详细介绍,见 和

命令。

语法

CHOICE

[/C[:]keys] [/N] [/S] [/T[:]c,nn] [text]

参数:text

指出要在提示符前显示的正文。仅当在提示符前的正文中包括有开关字符(/)作

为正文内容时,才要用双引号。如果不指定正文,CHOICE仅显示一个提示符。

开关项: /C[:]keys

指定提示中可接受的按键。显示时,这些键出现在[]内,键之间以逗号分隔,最后跟一问号。若不指定/C开关,CHOICE采用隐含值YN。冒号(:)是可选项。

/N

让CHOICE不显示提示符,但提示符前的正文仍然显示。若指定了/N开关,所指定的

按键仍有效。

/S

使CHOICE区别大小写字母。若没指定/S,CHOICE对任何用户指定的键,大小写不作

区分。

/T[:]c,nn

在对某一指定关键字作默认设置前,让CHOICE等待一指定秒数的时间。/T转换中的值如下所设:

c

指定等待nn秒后作为默认值的那个字符。该字符必须出现在/C开关后的按键

集中。 nn

指定暂停的秒数。可接受0-99之间的值。若指定为0,表示默认设置前不暂停。

CHOICE─注解

ERRORLEVEL参数 第一个键的返回值为1,第二个键的返回值为2,第三个键的返回值为3,依此类推。

如果用户按下的键不在指定的键中,CHOICE响一声警铃(即,它向控制台发送字符BEL或07h)。

如果CHOICE检测到一错误条件,将返回ERRORLEVEL值255。若用户按了CTRL+BREAK

或CTRL+C,CHOICE返回ERRLRLEVEL值0。

在批处理程序中用ERRORLEVEL参数时,可采用递减顺序列出对各返回进行的处理。

CHOICE─例子

在批处理文件用CHOICE时用户所见的信息

如果在批处理文件中采用了以下语法形式:

choice

/c:ync 则用户在CHOICE运行时,将看到:

[Y,N,C]? 在上例语句中,加入正文:

choice /c:ync Yes,

No, or Continue

CHOICE启动时,用户看到:

Yes, No, or Continue

[Y,N,C]?

去掉提示符后用户所见的信息

如下例,在批处理程序中用/N转换把提示符去掉:

choice /n Yes, No,

or Continue?

在CHOICE执行时,用户只见到指定的正文:

Yes, No, or

Continue?

用了T开关后用户所见的信息 如果在批处理程序中用以下语句:

choice /c:ync

/t:n,5

当CHOICE执行时,用户会看到:

[Y,N,C]?

5秒后,用户没按任何键,CHOICE就选择N且返回一个ERRORLEVEL值2。如果5秒内按下某键,CHOICE返回与用户选择相应对的值。

启动计算机时,若想让用户选择是否要消除C盘的碎片,可在AUTOEXEC.BAT文件中

加入下列语句:

choice Defrag drive /ty,5

if errorlevel 2 goto SkipDefrag

defrag c:

:SkipDefrag

若在5秒内按下N,DEFRAG将不会运行,CHOICE返回ERRORLEVEL值为2。如果5秒内没按下N,或选择了Y,则对C盘运行DEFRAG。

在批处理程序中使用CHOICE

下面的批处理程序演示如何利用CHOICE选项,让用户选择执行三个程序之一:

MS-DOS编辑器、Microsoft Anti-virus或Microsoft Backup。

注意,这里IF

ERRORLEVEL语句是按递减序列出的。如果由CHOICE返回ERRORLEVEL参数的值大于或等于IF命令所指定的参数,MS-DOS将认为IF语句为真。

@echo off

cls

echo.

echo A Microsoft Editor

echo B Microsoft Anti-Virus

echo C Microsoft Backup

echo.

choice /c:abc Choose an option

if errorlevel 3 goto MSBackup

if errorlevel 2 goto Msav

if errorlevel 1 goto Edit

:Edit

edit

goto End

:Msav

msav

goto End

:Msbackup

msbackup

goto End

:End

CHOICE [/C choices] [/N] [/CS] [/T

timeout /D choice] [/M text]

描述:

该工具允许用户从选择列表选择一个项目并返回所选项目的索引。

参数列表:

/C choices 指定要创建的选项列表。默认列表是 "YN"。

/N 在提示符中隐藏选项列表。提示前面的消息得到显示,

选项依旧处于启用状态。

/CS 允许选择分大小写的选项。在默认情况下,这个工具

是不分大小写的。

/T timeout 做出默认选择之前,暂停的秒数。可接受的值是从 0

到 9999。如果指定了 0,就不会有暂停,默认选项

会得到选择。

/D choice 在 nnnn 秒之后指定默认选项。字符必须在用 /C 选

项指定的一组选择中; 同时,必须用 /T 指定 nnnn。

/M text 指定提示之前要显示的消息。如果没有指定,工具只

显示提示。

/? 显示帮助消息。

注意:

ERRORLEVEL 环境变量被设置为从选择集选择的键索引。列出的第一个选

择返回 1,第二个选择返回 2,等等。如果用户按的键不是有效的选择,

该工具会发出警告响声。如果该工具检测到错误状态,它会返回 255 的

ERRORLEVEL 值。如果用户按 Ctrl+Break 或 Ctrl+C 键,该工具会返回 0

的 ERRORLEVEL 值。在一个批程序中使用 ERRORLEVEL 参数时,将参数降

序排列。

示例:

CHOICE /?

CHOICE /C YNC /M "确认请按 Y,否请按 N,或者取消请按 C。"

CHOICE /T 10 /C ync /CS /D y

CHOICE /C ab /M "选项 1 请选择 a,选项 2 请选择 b。"

CHOICE /C ab /N /M "选项 1 请选择 a,选项 2 请选择 b。"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值