阅读了相关的docs和tutorials并发现了similar问题后,我仍然无法继续。如果这是一个常见问题,请提前告知我。我做了搜索,但我不确定我在寻找什么...
我正在Debian中试验用于C的Libssh。
rc = ssh_channel_request_exec(channel, "ls -l");
if (rc != SSH_OK) {
ssh_channel_close(channel);
ssh_channel_free(channel);
return rc;
}
返回SSH_OK以表明命令已成功发送。正如我从similar问题中理解的那样,这是因为返回侦听成功的“发送”命令。返回不会监听是否已成功执行。
我的问题是,我该怎么做:
我知道ssh_channel_read()函数但是由于命令永远不会执行,我通常会得到输出
Read (256) buffered : 0 bytes. Window: 64000
答案 0 :(得分:0)
看看libssh源代码中的examples / exec.c!