2011-09-19 103 views
1

我正在嘗試計算使用Python/Shell的特定進程的CPU%的百分比,但目前爲止沒有。UNIX上的CPU利用率

我在這裏看過很多問題,但沒有人能幫助我。 有什麼建議嗎?

+0

爲了您的目的,「頂級」足夠了嗎? – Eamorr

+0

這是一個很難回答的問題,沒有上下文。你想達到什麼目的?您是否希望弄清楚您的程序是否具有最佳平衡的IO和CPU利用率?你是否試圖捍衛你的程序,因爲一些網絡工程師指控它是一個CPU豬?當你的標籤提到UNIX時,你的意思是哪個** nix變種? –

+0

@Eamorr:不能使用top。被告知不要。 –

回答

3
$ ps o "pid cp" 
    PID CP 
1609 0 
1813 0 
1851 0 
1885 0 
1896 0 
3164 0 
21679 0 
24019 2 

如果你正在尋找的過程可能無法運行相同的用戶您可以使用ps -eo "pid cp"在系統上顯示全部進程,而不僅僅是默認的自己擁有的進程。

如果你知道一個具體進程號的,你可能只是這樣做:

$ ps -p 24019 -o "cp" --no-heading 
    2 

其中24019是你想要的進程ID,你得到的結果是3個字符的字符串(右對齊,可能的3位數字)。

+0

出於某種原因,它只顯示4個進程。而不是我想監視的那個。 –

+0

...可能是因爲該進程屬於不同的用戶。檢查更新的答案。 +1 –

0

好了,你可以嘗試使用top命令與「-b -n 1」,並抓住它的內容比你可以使用切割或其他工具來得到你所需要的

注意:您可以添加-p選項限制到特定進程ID