【问题标题】:Windows Command LineWindows 命令行
【发布时间】:2010-03-13 02:42:01
【问题描述】:

有谁知道在直接输入 Windows 命令行时如何跳出 for 循环?我知道您可以在批处理文件中使用 goto 和标签来打破它,但我找不到任何关于在命令行上打破它的信息。这是一个简单的例子:

C:> for /l %i in (1,0,1) do @ping -n 1 google.com || (echo ^G & msg user "Google is down!" & QUIT)

这应该无限 ping google.com。如果它失败了,它会发出哔哔声(回显 ^G),向用户“user”显示一个消息框,上面写着“Google 已关闭!”,然后退出。我不知道如何做退出部分。我想我可以做一些类似 taskkill /f /im cmd.exe 的事情,但我正在寻找更优雅的东西。有什么建议吗?

【问题讨论】:

    标签: command-line loops for-loop break


    【解决方案1】:

    将其包装到cmd 的另一个实例中并使用exit

    cmd /c "for /l %i in (1,0,1) do @ping -n 1 google.com || (echo ^G & msg user "Google is down!" & exit)"
    

    【讨论】:

      【解决方案2】:

      尝试Exit 而不是退出

      【讨论】:

      • 只有一半的答案。这将立即终止您的会话,这通常不是您在命令行上工作时想要的:-)
      猜你喜欢
      • 1970-01-01
      • 2013-07-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-07
      • 1970-01-01
      相关资源
      最近更新 更多