Batch file 在TeamCity 9的一个构建步骤中运行两个批处理文件

Batch file 在TeamCity 9的一个构建步骤中运行两个批处理文件,batch-file,teamcity,Batch File,Teamcity,我正在使用TeamCity 9。我想在一个构建步骤中一个接一个地运行两个批处理文件 如果我在构建步骤中编写此代码: BATCH_1.bat <arg1> <arg2> BATCH_2.bat <arg1> <arg2> BATCH_1.bat 批次2.bat 只有BATCH_1.bat被执行。。。我改变了顺序,然后只执行了批处理2.bat。这意味着,只有构建步骤中的第一批文件被执行,并且控制移动到下一个构建步骤 当我分离构建步骤时,两个批处理

我正在使用TeamCity 9。我想在一个构建步骤中一个接一个地运行两个批处理文件

如果我在构建步骤中编写此代码:

BATCH_1.bat <arg1> <arg2> 
BATCH_2.bat <arg1> <arg2>
BATCH_1.bat
批次2.bat
只有
BATCH_1.bat
被执行。。。我改变了顺序,然后只执行了批处理2.bat。这意味着,只有构建步骤中的第一批文件被执行,并且控制移动到下一个构建步骤

当我分离构建步骤时,两个批处理文件都被执行了。但当我把它们放在一个步骤中,只有一个执行

有趣的是
ECHO
语句在
BATCH_1
之前执行,而不是在它之后执行


构建步骤中只能执行一个批处理文件是否有任何限制?

TeamCity在使用命令步骤时的工作方式是,它将步骤中的所有命令放在一个
.cmd
文件中,并要求命令行解释器执行它

所以这不是TeamCity的限制,而是命令行解释器的限制

要让解释器返回到您的第一个批处理文件(TeamCity生成的一个批处理文件),您必须调用其他批处理文件

试试这个:

CALL BATCH_1.bat <arg1> <arg2> 
CALL BATCH_2.bat <arg1> <arg2>
调用批处理_1.bat
调用BATCH_2.bat

尝试使用
呼叫批处理…..