Windows批处理脚本陷入死循环问题


Windows批处理脚本陷入死循环问题


现象
bat脚本内容十分简单,就一条命令:
start cmd
本意是执行bat脚本,就会弹出cmd窗口。看似很简单的一件事,但是出现了超出意料的事情。
双击刚编写的脚本后,windows就出现了死循环现象,cmd窗口一直不停的弹出,根本无法关闭,最后强制关机。

原因分析
出现死循环的原因在于bat脚本的命名上,bat脚本以cmd.bat命名。双击包含start cmd命令的脚本,该命令会首先找到cmd.bat文件,然后再去执行cmd.bat文件,而该文件中的内容恰好又是start cmd,于是又去找到cmd.bat文件,然后执行cmd.bat文件。以此类推,就出现了命令反复调用本身的现象,从而出现了死循环。
解决方法也很简单,将脚本文件名称改成cmd以外的其他名称即可。如:将脚本文件重命名为打开cmd.bat,再次执行bat脚本就不会出现死循环问题了。

参考

原文地址:https://www.cnblogs.com/hai-feng/p/12359134.html