适用于Windows XP和Windows的Windows批量选择命令2003

时间:2009-02-19 20:13:07

标签: windows batch-file cmd windows-xp

有没有办法从可在XP和Windows 2003服务器上运行的Windows批处理脚本中提示用户输入(即:是/否)?似乎有些命令(即:选择)仅适用于一个操作系统,而不适用于其他操作系统。

6 个答案:

答案 0 :(得分:8)

SET命令与/ P开关一起使用。

答案 1 :(得分:6)

SET /P RESULT=Y or N?
ECHO %RESULT%

答案 2 :(得分:6)

请注意,SET /P命令不支持与CHOICE命令相同的所有功能。即:

  • 不限制用户输入有效值
  • 用户必须按Enter键
  • 您必须检查套管差异(例如“A”与“a”)
  • 在一段时间后无法默认选择

由于这些原因,我仍然更喜欢使用CHOICE命令而不是SET /P命令。为此,您只需要将 CHOICE.COM 与批处理文件一起包含在内。您可以通过 MS-DOS 6.22 Supplemental Disk 从Microsoft下载 CHOICE.COM 。这是链接:

http://support.microsoft.com/kb/117600

答案 3 :(得分:2)

这基本上模仿了选择的作用,你需要将它作为子程序放在批处理文件中。我也更喜欢选择,但我需要一些可在Windows XP上运行的便携式设备。

然后,您可以修改此选项以接受其他"选项,"但是这将作为不区分大小写的情况起作用并重复提示,直到用户明确输入Y,y,N或n。

:yesorno
set /p choice=%2
if /i NOT %choice% == n (
    if /i NOT %choice% == y goto yesorno
)
set "%~1=%choice%"
goto :eof

然后您将通过以下方式调用此子例程:

call :yesorno answer "Do you want to continue? [Y/n]: "

到目前为止,它一直很适合我。

答案 4 :(得分:1)

例如你可以使用它:

SET /P ANSWER=y OR n?
If "%answer%"=="y" goto yes
If "%answer%"=="n" goto no

享受!

答案 5 :(得分:-1)

Windows Millenium的CHOICE.COM在XP SP3下可以正常使用。 然而,我的是匈牙利语,但你可以找到它的原始英语版本,例如搜索" windows millenium ebd"。

http://s000.tinyupload.com/index.php?file_id=57468192666746678653