批处理文件选择命令循环

时间:2014-06-18 22:58:37

标签: windows batch-file cmd command choice

我编写了一个只有Choice命令的简单批处理文件。代码如下:

Choice /C yn /M /t 5 "Do you want to continue"
If Errorlevel 2 Goto No


If Errorlevel 1 Goto Yes

Goto End
:No
Echo You selected No


Goto End
:Yes
Echo You selected Yes


:End

问题是,当我运行它时,它不会等待输入..它循环并且不会停止。我不知道该做什么或为什么它不起作用。我使用比这更复杂的选择命令创建了一个批处理文件,它工作正常。但是那个文件也无法在我的电脑上运行。

此外,如果我直接在cmd中键入选择命令,它可以正常工作但批处理文件循环

有什么建议吗?感谢

此处是指向视频的链接,该视频可准确显示其正在执行的操作http://youtu.be/4TkwlR7yMb8

1 个答案:

答案 0 :(得分:0)

/M开关用于Message,您需要在/M之后写入文本。您还需要包含/D开关(默认值),因为您指定了使用/T进行选择所需的时间。默认选项是如果用户未选择(例如,五秒钟),将自动选择的选项。以下示例将在结束时自动选择n

Choice /C yn /D n /T 5 /M "Do you want to continue"

批处理文件的名称不得与批处理文件中使用的命令相同。当您调用可执行文件(即choice)时,cmd将在查看path变量中的目录之前在当前目录中查找该名称的文件。因此,因为您的批处理文件名为choice.bat,所以当您运行命令choice /c ...时,您实际上是在调用批处理文件本身,而不是choice命令。重命名批处理文件。