gpt4 book ai didi

c - 如何知道 SSH 连接是否失败?

转载 作者:行者123 更新时间:2023-11-30 17:06:42 25 4
gpt4 key购买 nike

我必须在单独的进程中运行 ssh 命令(因此通过 execlp)将正在运行的计算机连接到同一本地网络中的另一台计算机。问题是,我必须确定输入的主机名有效,以便 ssh 连接成功。

由于 execlp 在命令成功运行时替换了调用进程的镜像(ssh 就是这种情况),据了解,在调用过程中无法知道ssh连接是否成功建立。

因此,我能想到的解决这种不方便的行为方式的唯一解决方案是断言要连接的机器的给定主机名是有效的。我可以/应该怎么做?

(有效的主机名只是存在的并且当然是可访问的,无论是 IP 地址还是别名)

最佳答案

In order to spare myself all the pipe setting, I use popen() to run ssh. So yes, if there is no other way, I might have to go down the less lazy path. … waitpid()

您不必走不那么懒惰的道路。 man popen:

The pclose() function waits for the associated process to terminate and returns the exit status of the command as returned by wait4(2).

关于c - 如何知道 SSH 连接是否失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34487317/

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