[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[其他] 批处理命令 set /p 限时输入,否则执行默认值

set /p 限时输入,否则执行默认值
5 秒内不输入内容并按回车,则限时“用户什么都没有输入”否则显示用户输入的内容。
代码思路来源与cn-dos的模拟线程。
http://www.cn-dos.net/forum/viewthread.php?tid=39880&fpage=1&highlight=%E7%BA%BF%E7%A8%8B
代码仍有一小小瑕疵,就是当不输入内容,执行默认值后,运行到代码的结尾,若不加exit则按任意键后,不会退出 cmd 窗口,不知如何解决。。
:
  1. @echo off&title 2008-05-07
  2. color 1f
  3. if "%~1"=="loop" (
  4.   ping/n 5 127.1>nul
  5.   if not exist z: exit
  6.   taskkill  /f /pid %pid% >nul
  7.   subst z: /d
  8.   goto loop
  9. )
  10. subst z: "%cd%"
  11. for /f "skip=3 tokens=2" %%a in ('Tasklist /FI "IMAGENAME eq cmd.exe"') do (
  12.   if not defined pid set "pid=%%a"
  13. )
  14. start /b %~s0 loop
  15. cls&echo.&set /p var=  请输入
  16. subst z: /d
  17. taskkill /im ping.exe /f >nul
  18. color fc
  19. if defined var (set var=用户输入的是:%var%) else set var=用户输入的是:回车
  20. :loop
  21. cls
  22. if not defined var set var=用户什么都没有输入
  23. echo.&echo %var%
  24. echo.&pause&exit
复制代码
没想到相同功能的帖已经在cn-dos有了,早知道就不用发这心思来写了。
http://www.cn-dos.net/forum/viewthread.php?tid=39828
若原作者 jvive 认为有必要,可短信联系我,我可以删除此帖。
1

评分人数

技术问题请到论坛发帖求助!

太高深了,批处理不是按照顺序执行的吗????
@set,=学无止境
@for /l %%b in (0,1,6) do @call set/p= %%,:~%%b,1%%<nul

TOP

恳请版主删除jvive的帖子

[ 本帖最后由 jvive 于 2009-1-8 18:37 编辑 ]

TOP

哦?
确实没注意到此帖,感谢 jvive 提醒,呵呵,原来我侵权了。。。
以在顶楼把作者(随风)信息去掉了。并把此帖由 原创区 移到 讨论区。

[ 本帖最后由 随风 于 2008-5-10 12:15 编辑 ]
技术问题请到论坛发帖求助!

TOP

恳请版主删除jvive的帖子

[ 本帖最后由 jvive 于 2009-1-8 18:36 编辑 ]

TOP

全部删除?还是只删这两个?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

欣赏之  刚好要用到  记得以前看到过  一下就搜到了

TOP

返回列表