2010-03-13 122 views
1

有没有人知道如何摆脱for循环直接输入到Windows命令行?我知道你可以在批处理文件中使用goto和标签来打破它,但是在命令行中我找不到任何关于打开它的东西。这里有一个简单的例子:Windows命令行

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

这应该无限平google.com。如果它失败了,它会发出哔哔声(echo^G),向用户“用户”显示一个消息框,其中显示“Google is down!”,并显示QUIT。但我不知道如何做退出部分。我想我可以做一些像taskkill/f/im cmd.exe一样的东西,但是我正在寻找更优雅的东西。有小费吗?

回答

4

裹成的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)" 
0

尝试Exit,而不是退出

+1

只有一半的答案。这将会立即杀死你的会话,这在工作于命令行时通常不是你想要的:-) – Joey 2010-03-13 02:47:41