2012-03-23 67 views
5

我使用PHP讀取當前的CPU使用率。我在vServer上,所以啓用了shell_exec。Debian:使用bash查找CPU使用率

我試過grepps,但它沒有奏效。 如何使用bash讀取當前%CPU使用率?

+0

會從bash足夠加載平均值嗎? 'cat/proc/loadavg'也http://www.cyberciti.biz/tips/how-do-i-find-out-linux-cpu-utilization.html(sysstat)可能是你可能想要使用/安裝。 – TryTryAgain 2012-03-23 16:08:08

回答

5

最簡單的方法就是使用sys_getloadavg

如果您想直接問OS,使用正常運行時間

$uptimeString = `uptime`; 

或任何existing answers對如何做同樣的事情在bash和只是反向包裹。

+0

我以前見過getLoadAvg commande,但它與CPU使用率(%)不一樣。正常運行時間和getloadavg也可能很有趣。但是我怎樣才能找出CPU使用率?您是否閱讀過現有的答案 - 例如: – bytecode77 2012-03-23 17:29:17

+0

我連接的問題中的第一個答案? – AD7six 2012-03-23 18:16:38

+0

啊,剛剛看到它。謝謝! – bytecode77 2012-03-23 18:40:16

3

在所有的解決方案左看右看後,我想出了這個代碼:

<?php 
    exec('ps -aux', $processes); 
    foreach($processes as $process) 
    { 
     $cols = split(' ', ereg_replace(' +', ' ', $process)); 
     if (strpos($cols[2], '.') > -1) 
     { 
      $cpuUsage += floatval($cols[2]); 
     } 
    } 
    print($cpuUsage); 
?> 

它調用ps -aux和總結了CPU%。