请看一下这一行:
${server_username}:${server_password}@@{server}:/tmp
双 @@ 会导致问题。它显示为 user:passserver 而不是 user:pass@server,因此无法连接到远程 ssh 服务器。
你如何告诉蚂蚁离开@ be?
这是我的代码:
<for list="${externalLibs}" param="library">
<sequential>
<for list="${servers}" param="server">
<sequential>
<echo> Copying @{library} to @{server} ${server_username}:${server_password}@@@{server}:/tmp/@{library}/${@{library}}/
</echo>
<scp todir="${server_username}:${server_password}@@@{server}:/tmp/@{library}/${@{library}}/">
<fileset dir="/tmp/@{library}/${@{library}}/" />
</scp>
</sequential>
</for>
</sequential>
</for>
在 echo 命令中,它显示如下:
将 LibraryName 复制到 myserver.domain.com 用户名:password@{server}:/tmp/LibraryName/LibraryBar