我有batch file生成many erros。我已经尝试了一些批处理IDE,但不知道哪些代码是错误的。 我需要像netbeans for java,Visual Studio for VB和C#等等。 我应该用什么批处理文件? 我看不出有什么问题,但错误就是。
'else' is not recognized as an internal or external command,
出现。 没有IDE的代码真的很痛苦,因为我需要准备文件并设置很多东西来测试。我需要的是像下面这张图片的错误建议,但批处理文件:
所以,如果我的" if else"块是错误的,请在我直接测试批处理文件之前告诉我,我的if else是不正确的。
请提出建议,也许在线工具还可以。像HTML验证器一样,JSON验证器也可以。我需要批处理文件的验证器。 离线工具或IDE更好。
答案 0 :(得分:3)
我想你必须删除45到46,40和41,35和36,30和31,19和20之间的换行符。
这个我的示例代码效果很好:
if exist 123 (
echo 1
) else (
echo 2
)
带有换行符的代码在else之前生成错误“'else'不是内部或外部命令”:
if exist 123 (
echo 1
)
else (
echo 2
)
这是一种仍然保持换行符的方法 - 在'else'之前的行尾添加^字符 - 这对我也有用:
if exist 123 (
echo 1
) ^
else (
echo 2
)
答案 1 :(得分:0)
我不知道任何IDE(集成开发环境)或text editor验证批处理文件,因此阅读此处的评论非常感兴趣。
但是,即使是像VisualStudio或Eclipse这样的IDE,也无法在C / C ++编译器编译后的C / C ++代码中找到所有错误。
由于%variable%
在被命令处理器解释之前被扩展导致在执行期间(或多或少)修改批处理代码,因此批处理验证程序无法找到批处理执行时可能发生的所有错误。
嗯,正如我所做的那样,使用像UltraEdit这样的优秀文本编辑器高度自定义批量文件编辑
对于有效编写批处理代码绝对是一个很大的帮助。但是,在命令提示符窗口中使用各种输入数据测试批处理文件,有时启用 echo 以查看批处理执行期间发生的情况,这通常是必要的。
答案 2 :(得分:0)
答案 3 :(得分:0)
看看Batch Compiler,它是具有内置编译器和调试器的完整IDE。您可以将批处理脚本编译为具有版本信息,管理清单,静默控制台模式和许多功能的独立可执行文件。 Batch Compiler最好的是免费的。
IDE的屏幕截图: