我在nant脚本中调用批处理文件,并希望获取值(5个字符的字符串)返回到nant脚本并继续nant脚本。 请建议如何做到这一点。提前谢谢。
答案 0 :(得分:2)
您可以使用exec
task node
resultproperty
属性
您的批处理文件(foo.bat):
...
@exit 101
您的NAnt代码段:
<exec
program="C:\foo.bat"
resultproperty="bar"
failonerror="false" />
<echo message="batch returned ${bar}"/>
答案 1 :(得分:1)
我根本不知道,但批处理文件返回数据的最常用方法是ERRORLEVEL。但是,errorlevel仅为数字(1-255)AFAIK。要返回错误级别,请在批处理文件中使用EXIT:
退出1
第二种方法是让您的批处理文件输出值......但是非常危险,因为其他输出可能会干扰它。
第三种方法是将结果写在文件中(例如“call command&gt; result.txt”)并且不能解析文件。
在每种情况下,你都必须解析结果 - 哪种方式最可行取决于它可以处理什么。