我想从Ant exec任务中运行两个dos命令。
我试过下面的代码
<exec dir="${testworkspace}\${moduleName}" executable="cmd" failonerror="true" output="${testworkspace}\${moduleName}\BuildConsole_TC${tc_num}.log" resultproperty="execrc">
<arg value="/c echo Download Status is ${DownloadStatus}"/>
<arg value="/c Load.bat ${moduleName} ${Intapp} ${CcvStatus}"/>
</exec>
但它只执行第一个命令并跳过秒。 我在Windows操作系统上尝试这个。
答案 0 :(得分:3)
这应该有效。简单地链接命令。
<exec dir="${testworkspace}\${moduleName}" executable="cmd" failonerror="true" output="${testworkspace}\${moduleName}\BuildConsole_TC${tc_num}.log" resultproperty="execrc">
<arg value="/c echo Download Status is ${DownloadStatus} & Load.bat ${moduleName} ${Intapp} ${CcvStatus}"/>
</exec>
答案 1 :(得分:1)
为什么需要在单个<exec>
任务中运行两个命令?相反,只需使用第二个<exec>
任务。您可以将两者都包含在一个目标中:
<target name="execute.this">
<exec dir="${testworkspace}\${moduleName}"
executable="cmd" failonerror="true"
output="${testworkspace}/${moduleName}/BuildConsole_TC${tc_num}.log"
resultproperty="execrc">
<arg value="/c echo Download Status is ${DownloadStatus}"/>
<exec dir="${testworkspace}\${moduleName}"
executable="cmd" failonerror="true"
output="${testworkspace}/${moduleName}/BuildConsole_TC${tc_num}.log"
resultproperty="execrc">
<arg value="/c Load.bat ${moduleName} ${Intapp} ${CcvStatus}"/>
</exec>
或者更好的是,只需使用<echo>
任务:
<echo message="/c echo Download Status is ${DownloadStatus}"/>
<exec dir="${testworkspace}\${moduleName}"
executable="cmd"
failonerror="true"
output="${testworkspace}/${moduleName}/BuildConsole_TC${tc_num}.log"
resultproperty="execrc">
<arg value="/c Load.bat ${moduleName} ${Intapp} ${CcvStatus}"/>
</exec>
如果您需要在同一文件中输出echo
任务,则可以使用file
命令中的echo
参数和append
参数。 exec
任务。