我有一个ant脚本,它运行一个交互式(需要2个用户输入)dos批处理文件使用exec任务。我尝试使用属性'inputstring'(有2个输入(空格之间,&在())和'input'(文件有两个条目)之间
只有第一个输入是由exec任务提供给批处理文件的,脚本无限期地等待第二个输入。
是否有办法通过执行任务(或)提供多个输入?是否有一个DOS命令为交互模式批处理提供输入?
片段1:
<exec dir="F:/upgrade" executable="cmd.exe" failonerror="true" output="upgrade.out" inputstring ="no&&yes">
<arg line="/c upgrade process F:/script"/>
</exec>
片段2:
<exec dir="F:/upgrade" executable="cmd.exe" failonerror="true" output="upgrade.out" input ="upgrade.input">
<arg line="/c upgrade process F:/script"/>
</exec>
输入文件内容
no
yes
技巧是模拟按下"ENTER"进入单个输入。"Enter"的代码在很多语言中都是字符"n"。其XML编码形式为实体:

.
那么这个就可以了:
<exec dir="F:/upgrade" executable="cmd.exe" failonerror="true"
output="upgrade.out" inputstring="no
yes
">
<arg line="/c upgrade process F:/script"/>
</exec>