本帖最后由 CrLf 于 2014-10-4 09:50 编辑
回复 7# xxpinqz
提供三个代替 choice 的方案,你一定会对第一个办法感兴趣:
1、sc+findstr 模拟 choice,在 win7 下通过测试:- @echo off
- set "test=1"
- for /f "delims=" %%a in ('sc ^| findstr /x .') do set test=%%a
- ::win7 测试发现 findstr /v $ 也有相同效果,但无法理解为什么能读到 y
- echo test=%test%
- pause
-
- ::借鉴自 http://bbs.bathome.net/redirect.php?goto=findpost&ptid=13558&pid=116141
复制代码 2、ascode 生成 choice.com:- @echo off&chcp 437|graftabl 936 >nul
- (echo RQPUWP]UZV_BBBB5``PY(E.(E3^)E5^)E:(E^>^)EFSX3CH^<P}pE^< ~r%%ooQRY2AY0@G uG0EGB?
- echo KO00O0KNX01K91200JMJKN2OLN9J8NNKO0001KNp01K93030JMJKN2OLKN0001_]XYZN9N810
- echo;K408LM2188L2KN8200JL38M0t083L0MK000t06NKO389O02L82K44LLM21
- )>"choice.com"
- ::这个 bat 是生成 "choice.com" 的模板,使用时可以直接复制
-
- choice.com 12
- if errorlevel 3 goto enter
- if errorlevel 2 goto 2
- if errorlevel 1 goto 1
- if errorlevel 0 goto error
-
- :: 下略...
- ::由 http://bbs.bathome.net/viewthread.php?tid=21888 算法生成
复制代码 3、powershell 调用 .net 的 console 类:复制代码 使用第三方的办法就不提了... |