在Windows系统上,某些dos命令没有可以通过NAnt的exec任务显式调用的可执行文件。 (我在具体谈论Command.com中的命令)
可以找到完整列表here。虽然使用NAnt或NAntContrib任务(复制,移动,重命名等)可以实现一些更有用的命令,但有些(例如'type')不能。
如何在构建过程中执行这些命令?例如,使用通配符,我如何轻松地从我的构建执行的外部命令显示日志文件的内容(以便外部命令的日志文件内容将回显到构建的日志文件中)
答案 0 :(得分:3)
可以使用exec任务以下列方式调用内部命令:
<exec workingdir="${dir}" program="cmd" commandline="/c <command/> <arguments/>" />
对于问题中的场景(日志的文件名基于当前时间,在构建的中途),而不是解析/扫描文件名,将其加载到属性然后回显它,您可以回显日志内容包含以下任务:
<exec program="cmd" workingdir="${dir}" commandline="/c type *.log" />