我有一个使用 scp 的现有 build.properties 文件,如下所示:
<scp todir="${linux.user}@${linux.site}:@{todir}" keyfile="${ssh.keyfile}" passphrase="${ssh.passphrase}" trust="yes" verbose="@{verbose}">
<filestocopy />
</scp>
Run Code Online (Sandbox Code Playgroud)
该命令的文档在这里:https : //ant.apache.org/manual/Tasks/scp.html
我想转向 ssh-agent 并删除密码。一些使用它的人将他们的 ssh 配置为不使用密码并将密码留空。
一种替代方法是使用http://www.jcraft.com/jsch-agent-proxy/,但我发现这个 1.5 年前的问题表示尚不支持:
这在许多 ant 脚本中使用,所以我需要一个计划,允许我使用 ssh-agent,同时仍然允许其他人继续使用他们的方法。
我在 Windows 7 上尝试将文件 scp 到 Linux。我有一个兼容 Pageant 的 ssh-agent:KeePass2/KeeAgent。
小智 2
不完全是你所要求的,但我已经通过使用exec 任务解决了我的类似问题(在 OS X 上的 Maven Antrun 插件中) 。因此,您可以使用类似的东西来替换您拥有的东西:
\n\n<exec executable="pscp">\n <arg value="dirtocopy"/>\n <arg value="-r"/>\n <arg value="-i"/>\n <arg value="${ssh.keyfile}"/>\n <arg value="${linux.user}@${linux.site}:@{todir}"/>\n</exec>\nRun Code Online (Sandbox Code Playgroud)\n\n当然这并不理想。对于跨平台支持,您需要每个人都安装 SCP 实现,并且您需要条件scp在 *nix 上和pscp/或 Windows 上进行选择。
然而它有一些优点 \xe2\x80\x93ssh-agent集成可以正常工作(根据您最初的请求),并且您可能不需要-i我为了完整性而包含的参数。
警告:我还没有使用 PuTTY 套件或在 Windows 上实际测试过这一点
\n| 归档时间: |
|
| 查看次数: |
1005 次 |
| 最近记录: |