我在ANT中定义的宏来检查,如果在远程Linux机器存在DIR赶上返回值:如何从一个SSH任务蚂蚁
<macrodef name="checkIfDirExists">
<attribute name="host" />
<attribute name="username" />
<attribute name="password" />
<attribute name="dir" />
<sequential>
<runcommand executable="[ -d @{dir} ]" host="@{host}" username="@{username}" password="@{password}"/>
</sequential>
</macrodef>
runcommand
只是为sshexec
任务的包装宏验证了一些额外的东西,但基本上它只是一个sshexec
。
现在,如果我运行它,它工作的方式,如果该目录中存在的构建下去,但如果它不存在,因为[ -d @{dir} ]
返回值是1。
我想构建失败能够检查返回值,因此我可以将它放在conditional
标记中,例如,如果目录存在,跳过,并且它没有使用mkdir创建它。
这可能吗?
工作像一个魅力。谢谢 ! – Michael 2011-06-02 14:08:34