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

[特效代码] 如何在CMD窗口实现循环或跳转?

本帖最后由 cjiabing 于 2011-8-13 11:18 编辑

CMD窗口通常一行一次命令,几个命令只能借助&或|等连接符号来连接,不能分行是一个痛。
所以,想要在cmd窗口进行循环命令是个难题!~
比如:
  1. :loop
  2. echo %time%
  3. goto loop
复制代码

你直接复制进cmd也无法使得进行循环。
这样也不得:
  1. :loop&echo %time%&goto loop
复制代码

估计是cmd不支持标签所致,只是估计,想向诸位讨教下,CMD是否支持标签跳转,如果不支持,有没有其它可替代的用法?
看看大家有什么好建议,实现在CMD窗口的标签跳转和有效循环,以扩展cmd /c 的应用。
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

在我电脑上试下是可以运行的,把goto loop 改为%0 也可进行实现循环

TOP

本帖最后由 hanyeguxing 于 2011-8-7 20:43 编辑

例如:
  1. cmd /v/q/c "for /l %a in () do if "!time:~0,5!"=="12:34" echo ok&exit"
复制代码
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)

TOP

回复 2# 545810831


估计楼主希望得到的是循环,而不是死循环。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

本帖最后由 cjiabing 于 2011-8-7 15:44 编辑

回复 3# hanyeguxing


    你一说变量延迟我估计就是cmd /vn了,呵呵,不过没空试,谢谢!~

    靠,昨晚试了一个晚上,原来是 cmd  /v:on /c ,而不是 cmd  /c /v:on ,太过分了!~
    人有时候就是范糊涂!~
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

回复 2# 545810831


    其实,我是想在cmd窗口实现标签跳转功能的,而不是简单的循环。
    在发完这个问题后,我首先就想得到了for可以循环,但for仍然没有办法跳转。
    可能问题没有想清楚就发了,抱歉。
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

回复3# hanyeguxing  
"!time:~0,5!"=="12:34"    如果时间是6:34 就不灵了 所以!time! 取值为前5位是错的吧

TOP

回复 7# 545810831


    1,这里仅仅是举个示例而已
   2,如果时间是6:34 ,应该写成 "!time:~0,5!"==" 6:34"
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)

TOP

看来我要多学,多做才行

TOP

  1. (
  2. :loop
  3. echo XXXXXXXXX
  4. goto loop
  5. )
复制代码

TOP

回复 11# yhp1996


楼主说的是命令行窗口,不是BAT文件。

TOP

返回列表