标题非常自我解释。我试图通过PHP中的PID获取进程的CPU使用率,以便我可以在网页中显示它。代码在终端中编写时效果很好,但在通过PHP完成时不会打印任何内容。
尝试
$cmd = "sudo top -n1 | awk '/30100/ {print $9}'";
echo exec($cmd);
其中30100是pid
和
$cmd = "sudo sh -c \"top -n1 | awk '/30100/ {print $9}'\" ";
echo exec($cmd);
我还试过$ var = exec()然后var_dump($ var),结果是字符串(0)
我想补充一点,我在系统上使用与此类似的其他命令,它们运行正常。一个例子是
$cmd = 'sudo -u server' . $sid . ' sh -c "pidof hlds_i686"';
$pid = exec($cmd);
返回进程pid
答案 0 :(得分:1)
这可能是sderr / stdout问题,请尝试使用
$cmd = "sudo sh -c \"top -n1 | awk '/30100/ {print $9}'\" ";
echo shell_exec($cmd." 2>&1");