有沒有一種方法來提示輸入用戶(即:是/否)從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