有没有一种方法来提示输入用户(即:是/否)从Windows批处理脚本在XP和Windows 2003服务器的工作原理?看起来有些命令(即:选择)只能在一个操作系统上工作,而不能在其他操作系统上工Windows批处理命令的选择适用于Windows XP和2003
6
A
回答
8
使用SET命令与/ P开关。
6
SET /P RESULT=Y or N?
ECHO %RESULT%
6
注意,SET /P
命令不支持所有相同的功能,CHOICE
命令。即:
- 它没有用户限制输入有效值
- 用户必须按回车键
- 你必须检查外壳差异(例如“A”和“A”)
- 没有办法为默认的必然选择一定的时间
出于这些原因后,我还是更喜欢使用CHOICE
命令,而不是SET /P
命令。要做到这一点,你只需要包括CHOICE.COM以及你的批处理文件。你可以从微软通过MS-DOS 6.22附加磁盘下载CHOICE.COM。这里的链接:
1
举例来说,你可以这样做:
SET /P ANSWER=y OR n?
If "%answer%"=="y" goto yes
If "%answer%"=="n" goto no
享受!
2
这将基本上模仿做了什么选择,你需要把它作为在批处理文件中的子程序。我也更喜欢选择,但我需要一些可在Windows XP上运行的便携式设备。
然后,您可以修改此接受其他“选择”,然而,这将作为区分大小写,重复提示,直到用户明确地进入Y,Y,N,或n。
call :yesorno answer "Do you want to continue? [Y/n]: "
它一直对我非常好,到目前为止:
:yesorno
set /p choice=%2
if /i NOT %choice% == n (
if /i NOT %choice% == y goto yesorno
)
set "%~1=%choice%"
goto :eof
你会然后通过调用这个子程序。
-1
Windows Millenium的CHOICE.COM可以在XP SP3下正常工作。 但是,我的匈牙利语,但你可能会找到它的原始英文版本,例如搜索“windows millenium ebd”。
http://s000.tinyupload.com/index.php?file_id=57468192666746678653
相关问题
- 1. 使用批处理文件检测Windows 2003和XP
- 2. Hudson - Windows执行windows批处理命令
- 3. Windows批处理:find命令和ERRORLEVEL
- 4. 使用Windows批处理命令
- 5. Windows XP批处理IF和XCOPY
- 6. Windows XP批处理命令schtasks does not'运行远程脚本
- 7. 转义“)”在Windows批处理“的命令
- 8. 用于获取用户信息的Windows批处理命令
- 9. 适用于Windows 2003的SQLCMD
- 10. windows批处理多行命令?
- 11. Windows批处理:“超时”命令模拟
- 12. windows批处理命令嵌套变量
- 13. windows批处理/每行多个命令
- 14. 用于mysqldump命令的windows批处理文件
- 15. 用于unix shell命令替换的WIndows批处理模拟
- 16. Windows XP批处理文件concat
- 17. 创建适用于Windows XP
- 18. 关于windows批处理命令的jenkins错误
- 19. 使用标准的Windows命令行/批处理命令模拟unix'cut'
- 20. Windows批处理命令选项卡分隔符
- 21. Windows批处理文件
- 22. 用于批量渲染的Windows批处理文件重命名
- 23. 优美的DOS命令的错误处理在Windows 2003
- 24. Windows批处理执行关于呼叫命令
- 25. 批处理文件在Windows 2003服务器中无法执行命令
- 26. Windows批处理
- 27. 带有Windows批处理文件的SQLPLUS命令行
- 28. Windows XP命令问题
- 29. Windows 2003/XP上的Apache2,PHP5和Interbase/Firebird
- 30. Windows Server 2003和XP上的TLS 1.2
如何超时和默认? – Baczek 2012-01-03 10:14:25