0

我正在尝试将我的服务器上的 htop 输出作为可查看的 HTML 页面输出,以便我可以轻松地对其进行检查。我已经完成了对 HTML 部分的导出(使用echo q | htop | aha --black --line-fix)。当我以交互方式使用它时,它工作得非常好,现在我需要做的就是将它连接到一个 Web 门户。我的设置是 PHP,我使用exec()andshell_exec()来尝试显示输出。但是,输出为空白。我怀疑这是因为 htop 不知道显示,所以它无法知道要显示的正确尺寸是多少。所以我的问题是,有没有办法告诉通用进程/shell 脚本它可以使用具有指定尺寸的富有想象力的显示?

4

1 回答 1

0

我知道了。最简单的方法是不再使用 htop。作者htop 应该是交互式使用的,并且没有简单的方法来获取它的输出。另一个内置 Web 服务器模式的监控工具是Glances,你可以做类似的事情glances -w,一切就绪。

但是,如果你真的想做 htop 那么我就明白了。最简单的工作代码是:

echo shell_exec("export TERM=xterm-color;echo q | htop | aha --black --line-fix");

更可定制的工作代码是:

exec("rm /var/www/html/abc");
exec("export TERM=xterm-color;echo Hthq | htop | aha --black --line-fix > /var/www/html/abc");
echo shell_exec("cat /var/www/html/abc | head -n 10");
echo shell_exec("cat /var/www/html/abc | tail -n 25");

这允许您更改echo Hthq零件中的设置。最后hq打开 htop 的帮助菜单然后关闭它,强制 htop 重绘所有内容。head和位将tail切出正确的段。您可以自定义之前的所有内容(例如Ht,隐藏线程并显示树视图)。

于 2020-03-11T19:35:42.287 回答