我有一个包含这些内容的批处理文件名xyz.bat
@echo off
echo 1.Cleaning all four project.
call apacheant\bin\ant -buildfile clean-all.xml
当第一个呼叫结束时,它在控制台构建上写入成功或构建失败 如何在此条件的基础上验证此调用是否失败或传递我想决定下一次调用执行。
echo 1.Building all four project.
call apacheant\bin\ant -buildfile build-all.xml
@echo on
答案 0 :(得分:2)
echo 1.Building all four project.
call apacheant\bin\ant -buildfile build-all.xml >logfile.txt
findstr "succeed" logfile.txt >nul
if errorlevel 1 (echo Build failed) else (echo Build Succeeded)
当然,如果需要,echo ...
可以替换为'set antstatus = SUCCEED`。
不要尝试使用ERRORLEVEL来控制处理,因为MANY命令会改变ERRORLEVEL以报告自己的状态。
可能可能 ANT
在终止时返回状态。您可以查看
echo %errorlevel%
在ant
步之后。如果它返回errorlevel,那么您不需要创建和解释日志文件。
IF ERRORLEVEL
语法是
if errorlevel n Command_if_errorlevel_is_n_OR_GREATER_THAN_n