shell_exec返回null – 监视linux服务

我需要我的Linux服务器监视服务没有shell,我写了一个新的PHP脚本,这个function。 运行后,脚本不会写入服务状态。 例如 – 如果我在terminal写这个命令 –

service nginx status |awk '{print $4} 

他是回到我身上的结果:

 Run... 

这个脚本:

 <?php $nginx = shell_exec("service nginx status |awk '{print $4}'"); $bd = shell_exec("service mysqld status |awk '{print $4}'"); $jabber = shell_exec("service ejabberd status |awk '{print $4}'"); $cgi = shell_exec("service php-fpm status |awk '{print $4}'"); $mem = shell_exec("service memcached status |awk '{print $4}'"); echo "<b>Web-server nginx:</b> $nginx"; echo "<br>"; echo "<b>Server MySQL:</b> $bd"; echo "<br>"; echo "<b>Server Jabber Jabber:</b> $jabber"; echo "<br>"; echo "<b>Service php-fpm:</b> $cgi"; echo "<br>"; echo "<b>Service memcached:</b> $mem"; ?> 

如果通过php做到这一点,所有'$'函数将返回有关服务状态的空白信息。 如何正确编写这个脚本? 请帮忙 :)

使用service命令的完整路径,因为它所在的目录不在web服务器的默认$PATH