首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP SSH2 Exec -获取PID

PHP SSH2 Exec -获取PID
EN

Stack Overflow用户
提问于 2015-07-27 20:58:06
回答 1查看 1.2K关注 0票数 1

如何获取通过SSH2执行的进程的PID。

我尝试过的:

代码语言:javascript
复制
ssh2_exec($SSH2, 'echo `ps aux | grep -F "' . $StartCommand . '" | 
 grep -v -F "grep" | awk \'{ print $2 }\'`');

代码语言:javascript
复制
ssh2_exec($SSH2, $StartCommand.' > /dev/null 2>&1 & echo $!');

但结果是我得到了回声资源id #2或资源id #3或资源id #4

EN

回答 1

Stack Overflow用户

发布于 2015-07-27 21:09:20

您必须使用ssh2_fetch_stream函数来获取此资源源。

代码语言:javascript
复制
$stdout_stream = ssh2_exec($SSH2, $command);
$err_stream = ssh2_fetch_stream($stdout_stream, SSH2_STREAM_STDERR);
$dio_stream = ssh2_fetch_stream($stdout_stream, SSH2_STREAM_STDIO);

stream_set_blocking($err_stream, true);
stream_set_blocking($dio_stream, true);

$result_err = stream_get_contents($err_stream);
$result_dio = stream_get_contents($dio_stream);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31653740

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档