gpt4 book ai didi

linux - ant sshexec 任务在执行命令返回时或之前返回吗?

转载 作者:太空宇宙 更新时间:2023-11-04 09:51:43 25 4
gpt4 key购买 nike

基本上我在 ant 目标中有 2 个 sshexec 任务,一个接一个。第一个在一台机器上启动消息发送器,第二个在另一台机器上启动消息接收器。我假设 sshexec 任务将发出运行消息发送方的命令,然后在发送方运行时返回,然后以下 sshexec 任务将启动接收方,因此发送方和接收方将并行运行,这这是我希望实现的,但我不确定是否真的如此,或者实际上第一个任务是否只有在发送者返回时才会返回,因此接收者只有在发送者执行完后才会开始。

sshexec 任务页面似乎没有提供太多信息,而且我对 mac 有点陌生(命令是在运行 macos 10 的 mac minis 上发出的),所以非常感谢任何帮助,谢谢!

    <!--start sender-->
<sshexec host="${ip.client3}"
username="${username}"
password="${userpassword}"
trust="true"
command="./sender"
/>

<!-- start receiver-->
<sshexec host="${ip.client4}"
username="${username}"
password="${userpassword}"
trust="true"
command="./receiver "
/>

最佳答案

<sshexec>任务会在远程命令返回后返回。

如果只是想让两个命令同时启动,可以使用<parallel>任务。 <parallel> 中嵌套的任何任务任务将通过多线程“同时”运行。然而,这样一来,<sshexec>仍然需要等待两个命令返回。

如果您只想让您的 ant 脚本启动这两个命令并继续构建而不等待远程命令返回,您可以使用类似 nohup 的东西在你的命令行中。

我不确定 nohup 是否有效,因为当我使用 nohup 从 ssh 终端运行远程命令时,如下所示:

nohup command & [ENTER]

在我开始使用同一个终端做其他事情之前,我必须再次按下回车键。

关于linux - ant sshexec 任务在执行命令返回时或之前返回吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10296220/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com