批处理的错误处理

这两天加工数据的时候很郁闷,由于Informatica的限制.调度程序不能够跨文件夹,跨知识库进行调度,现在为了完成统一任务调度只能是使用命令行用批处理文件来尽享执行,问题就在这里,任务失败以后批处理文件还是会继续往下执行,可是由于前一任务失败了很可能会导致后续任务数据错误,排查起来相当痛苦,这就需要添加一个功能,在任务出现错误的时候应该停下来,有人来选择是否继续往下执行,如果有依赖关系,就需要等将错误任务处理完以后再接着往下执行,如果是个简单任务就可以简单忽略,然后手工处理.
命令行程序PMCMD 会有返回值,如0是成功,其他都是异常,判断返回值便可知道任务是否成功.

怎么实现这个功能?写个程序? 噢.No.杀鸡焉用牛刀.一个简单批处理文件就完成了.

[code]
for /f "delims=" %%i in (work.txt) do (
   %%i||call :aa
)
goto :eof
:aa
if not errorlevel 0 {
set /p ab=输入Y继续执行,N退出程序:
if /i "%ab%"=="y" goto :eof
if /i "%ab%"=="n" exit}

将需要运行的命令保存在work.txt中,一个命令一行,假如出错便会停下来等待处理 ,很简单.很实用.

程序参考http://bbs.verybat.cn/中热心人的帮助,在此感谢!

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据