Powershell cmdlet params in nant

时间:2013-10-08 15:11:49

标签: .net powershell continuous-integration nant

我有一个nant构建,我试图调用PowerShell cmdlet,如下所示:

<exec program="powershell.exe" commandline='.\Download.ps1 ${dir}' />

只要dir路径不包含空格并且抛出错误:

,这样就可以正常工作
A positional parameter cannot be found that accepts argument .....

我在下面尝试解决此问题,但这不起作用。

<exec program="powershell.exe" commandline='.\Download.ps1 "${dir}"' />

2 个答案:

答案 0 :(得分:4)

请改为尝试:

<exec program="powershell.exe">
    <arg value=".\Download.ps1"/>
    <arg value="${dir}"/>
</exec>

答案 1 :(得分:3)

通过将exec任务修改为:

来解决问题
<exec program="powershell.exe" commandline=".\Download.ps1 '${dir}'" />