首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >执行命令get top:失败的tty get

执行命令get top:失败的tty get
EN

Stack Overflow用户
提问于 2018-07-09 23:41:01
回答 1查看 9.7K关注 0票数 5

执行如下所示的代码行时,我遇到了一个问题。

代码语言:javascript
运行
复制
sudo /usr/bin/env TERM=xterm /usr/bin/php /home/folder/folder/script.php -b val -a 2018-07-01

它给我一个错误的top: failed tty get。当我在php -f上尝试时,它给我带来了另一个类似于php --help的问题。

代码语言:javascript
运行
复制
[0] => Array
        (
            [error] => 1
            [return] =>     top: failed tty get


        )

我想要的结果是成功执行命令,而不是错误。我在PHP脚本中使用SSH执行此命令。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-16 11:14:54

确实可以在这里复制一份PHP脚本(根据注释中的要求)进行确认,但这是基于您提供的内容:

在一些需要PHP脚本中的终端的配置中运行"top“似乎就是你想要做的。

代码语言:javascript
运行
复制
/home/folder/folder/script.php
<?php

exec('top -n 1 -b', $out, $error);

print_r($out);

调用者

代码语言:javascript
运行
复制
/usr/bin/php /home/folder/folder/script.php

有两种解决方案:

1)对于一个经过迭代测试的Centos7,使用上述参数(-n 1 -b)批量运行。这应该不需要终端,并将输出添加到一个数组中。这可能就是你所需要的。但如果它仍然失败:

2)否则,您可以指定TERM=xterm -看起来这就是您想要做的事情,但您需要在exec中指定它,而不是在调用php脚本的shell中。

代码语言:javascript
运行
复制
/home/folder/folder/script.php
<?php

exec('TERM=xterm top -n 1 -b', $out, $error);

print_r($out);

调用者

代码语言:javascript
运行
复制
/usr/bin/php /home/folder/folder/script.php
票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51249326

复制
相关文章

相似问题

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