在PHP中,您可以使用exec():http://www.php.net/manual/en/function.exec.php
$last = exec('ls', $o, $r);
Run Code Online (Sandbox Code Playgroud)
$o将保持输出并$r保持返回码并$last保持最后一行输出.一般来说,您通常会使用它:
$last = exec('ls', $o, $r);
if ($r != 0)
{
print 'Error running command';
exit($r);
}
else
print implode("\n", $o);
Run Code Online (Sandbox Code Playgroud)
top是一个交互式程序,命令将永远继续,PHP/exec()将继续等待它完成.您可以使用top -b -n1"批处理模式".top(1)有关top参数的更多信息,请参阅参考资料.
如果您想要一个适用于任何命令的更通用的解决方案,您可以使用popen()(或proc_open())从xmlrpc脚本运行.这是一个更复杂的设置,并且需要一些有关UNIX进程控制的知识.正确地做这件事远非微不足道......
PS:top的参数因操作系统而异.在Linux上,你top -b -n 1在FreeBSD上使用它top -b 999(其中999是要显示的行数).不确定这对你是否重要,但保持在你的脑后是件好事.