windows – 如何运行命令直到成功?

前端之家收集整理的这篇文章主要介绍了windows – 如何运行命令直到成功?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我仍然使用 Windows批处理文件来执行基本任务.其中一个是检查我的互联网连接(pg.bat),它只执行ping www.google.com

大多数时候,我需要运行它几次,直到它成功(主机找不到错误).起初我认为ping -t会起作用,但事实并非如此.找不到主机时,它会立即停止.

如何在ping成功之前运行pg.bat? (即至少有一个默认的4个ping工作)

通常,您可以在批处理文件中使用label / goto语法.
:repeat
your-command || goto :repeat
echo Success!

||如果第一个命令失败,它将只运行第二个命令.在这种情况下失败意味着非零退出代码,因此它仅适用于将%errorlevel%设置为0表示成功或非零表示失败的命令.

对于ping.exe的特定情况,退出代码在失败时并不总是非零.在这种情况下,您可以使用find.exe搜索ping的输出获取成功消息,并设置我们需要的errorlevel.

:repeat
(ping -n 1 www.google.com | find "TTL=") || goto :repeat
echo Success!

(感谢Stephan关于ping.exe退出代码的解释和解决方案)

猜你在找的Windows相关文章