- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
批处理调试批处理调试
批处理调试
我想不管是什么人,都是一边写代码,一边调试如果没有正确的调试方法,那会大大降低写代码的效率,特别是碰到一些大型的“程序”...下面就我个人的一些经历,谈谈我的一些关于批处理的调试方法....第一步:去掉@echo off几乎每个人都有这样的书写习惯,屏蔽命令回显。但是,在调试过程中,我们却要研究到底哪一行出了错误,所以这个时候再不能屏蔽命令行回显了...第二步:(针对新手,老手直接跳过)在原代码的每行的下一行添加pause(当然,也要把你前面添加的pause去掉)举例说明,测试代码:?复制内容到剪贴板?代码:@echo off?echo Happy new yearecho Best wishs to everyoneif a==a echo ok? ?%=====注意,这句末尾有个 ,是个特殊符号,运行到这里,程序会意外退出=====%pausenul运行这个代码的时候,我们会看到批处理窗口,一闪而过(运行过程中有错误),说明我们的程序有语法错误。作为新手,我们调试的时候要怎么办呢?我们就尝试在每行的后面添加 pause 的方法,如:?复制内容到剪贴板?代码:@echo off?echo Happy new yearpause %=========这里添加一个pause=======%echo Best wishs to everyoneif a==a echo ok? ?%=====注意,这句末尾有个 ,是个特殊符号,运行到这里,程序会意外退出=====%pausenul我们再运行,发现程序竟然没意外退出,这个说明 第一 个pause前面的代码没出现语法错误,然后删除 pause这一行,在下一行 插入pause 看运行结果,例:?复制内容到剪贴板?代码:@echo off?echo Happy new yearecho Best wishs to everyonepause %=========这里添加一个pause=======%if a==a echo ok? ?%=====注意,这句末尾有个 ,是个特殊符号,运行到这里,程序会意外退出=====%pausenul运行,发现也没运行错误,说明前面的语句都没错,那就继续下,直到找到错误的地方....第三步:(面对“老手”)呵呵,这个夸张了点,可能老手都知道了,方法就是在 命令行下 直接调用自己的?调试文件,看返回结果哪里出现错误(这个需要眼睛非常 利索 罗);再拿以上的代码来测试(假设保存为f:\test.bat,):命令行下,输入 f:\test.bat,看运行结果:?复制内容到剪贴板?代码:F:\F:\test.batHappy new yearBest wishs to everyone命令语法不正确。很明显,在echo Best wishs to everyone 下出现了语法错误;当然,这个程序非常短,错误排查比较简单,如果程序段非常长,那就比较麻烦。也用这种办法去排查(先去掉@echo off),但是眼睛要紧紧盯着运行窗口,看看哪里开始出现错误,只要一出现,就马上按 ctrl + c ,然后看看,程序提示的错误是什么,下面的工作就由你们自己去完成了,呵呵...
一、call 命令问题调试调试:在c:\根目录建立1.bat,2.bat。当调用与被调用的文件在同一个目录下时,不用制定路径。问题(1)新建1.bat,2.bat并放在c盘根目录1.bat内容:@echo offecho?调试1.bat使用call调用2.bat以后是否直接从头运行被调用的批处理程序2.bat。echo ~~~~~~~~~~~~~~~~~~~~~~~~~echo ~~~~~~~~~~~~~~~~~~~~~~~~~echo ~~~~~~~~~~~~~~~~~~~~~~~~~echo 这是1.bat的第一句命令。echo 下面是命令call c:\2.bat。pause?cls?rem 清屏命令call c:\2.batrem 路径为c盘根目录,当调用与被调用的文件在同一个目录下时,不用制定路径。pause? ?? ?? ?? ?? ?echo ~~~~~~~~~~~~~~~~~~~~~~~~~echo ~~~~~~~~~~~~~~~~~~~~~~~~~echo 如果上面的显示的是:echo 这是2.bat的第一句话。echo 这是2.bat的第二句话。echo 2.bat运行完毕。echo 说明1.bat使用call调用2.bat以后是直接从头运行被调用的批处理程序2.bat的
文档评论(0)