Board logo

标题: [其他] goto跳转错误导致bat退出 [打印本页]

作者: 百事可乐001    时间: 2021-4-28 09:20     标题: goto跳转错误导致bat退出

高手们早上好,因工作所需编写了一款包含很多goto跳转语句的批处理共享给分公司使用,但是公司同事对批处理不了解、或者是比较马虎,在goto后面的子程序经常填写错误、导致bat直接退出运行,高手们有没有什么办法实现在跳转到一个不存在的项目时给出错误提示呢
作者: cutebe    时间: 2021-4-28 11:36

这属于语法错误,好像只能通过外部检查。批处理自身好像没有命令可以直接检查标签!

变通一下,尽量用call形式使用标签:
  1. @echo off
  2. ……
  3. call :标签一
  4. call :标签二
  5. ……
  6. goto :eof
  7. ::结束批处理
  8. ::函数
  9. :标签一
  10. ……
  11. goto :eof
  12. :标签二
  13. ……
  14. goto :eof
复制代码
call遇到不存在的标签也会提示错误,但会接着执行下一行。而不会直接退出!
作者: Batcher    时间: 2021-4-28 20:59

回复 1# 百事可乐001


    建议不要让他们直接修改bat文件,把需要修改的地方放在一个文本文件里面,用你的bat根据用户修改的文本内容进行相应的处理。
作者: 百事可乐001    时间: 2021-4-29 12:28

感谢两位大佬的支持




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2