|
发表于 2023-5-26 18:30:12
来自手机
|
显示全部楼层
一般来说,批处理的能力有限,代码行数一般不会太长,个人目前写过最长的是DP盘符整理,也才2400行,几万甚至是几十万行的批处理真没有见到过,所以也没研究过VSCode中的调试功能,不知道怎么单步执行。
一般出错后,在cmd中执行脚本,借助pause和echo、set等排查。
对于语法错误直接退出的,一般会提示出错信息;仍然退出的,就在适当的位置增加pause,还退出继续往前增加,直到不退出,这样就可以排查哪一段的代码语法错误。
知道哪一段的代码语法错误后,头昏脑涨不便直接看出来的,可尝试开启这段代码的回显,或者单独写一个脚本来测试。
单独写一个脚本测试完之后,再增加到原来的脚本中是一个不错的习惯,特别是对于千行以上较长的脚本来说更不容易出错,对于几万行的,可以考虑将单独的功能模块写成一个单独的脚本来调用。
变量值获取错误可以借助echo、set显示相关变量,记得尝试在变量前后增加其它字符,比如echo #%var%#,这样可以排查你头大崩溃骂街几个小时的无法解决的问题,可能就是变量值后面多了一个空格。
这就不得不提几句代码编写习惯
养成增加注释的好习惯,方便自己看也方便他人看
使用vscode、notepad++等友好的代码编辑器,而不是系统自带记事本,具有代码高亮、自动补全、自动缩进对齐等功能,这样,你就减少了很多少了一个引号、一个括号之类的语法错误。代码高亮,不同的颜色更容易排错。代码段折叠功能,可以更容易理解代码整体框架逻辑。
变量赋值时尽可能使用双引号,这样基本就不会出现变量值后面多一个空格等空白字符。比如,set "var=wuyou"
|
|