我在bash腳本中有一項任務,試圖測量用於按名稱傳入腳本的進程的cpu時間。我可以找到進程ID並將其傳遞給bash中的頂級程序。但是,我還沒有想出如何從頂層程序中提取CPU時間。例如:在bash中使用頂級程序將cpu時間提取到變量中
頂部打印出:
top - 00:57:07 up 6:06, 2 users, load average: 0.46, 0.31, 0.55
Tasks: 1 total, 1 running, 0 sleeping, 0 stopped, 0 zombie
%Cpu(s): 3.7 us, 0.8 sy, 0.0 ni, 94.6 id, 0.9 wa, 0.0 hi, 0.1 si, 0.0 st
KiB Mem: 1928720 total, 1738072 used, 190648 free, 57184 buffers
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3337 amarkovi 20 0 372m 31m 10m R 0.7 1.7 13:28.74 chromium-browse
所有我從這個希望是時間+場被分配到變量,這樣我可以加起來的時間和它自身打印出來。
我是bash腳本的小菜鳥,所以請耐心等待。
謝謝,
我不必使用top。我可以PS,但我真的不明白輸出修飾符以及如何將時間值變成一個變量。我是程序員,這個shell選項非常混亂。使用ps -p(pidof md),它使我的打印時間不夠。爲了只顯示時間和賦值給變量,使用什麼修飾符? – user1078259 2013-02-23 17:35:42
得到了ps -o時間-p pid現在我需要將它剪切並保存:) – user1078259 2013-02-23 18:01:46
^^跳過標題,使用'ps -otime = -p pid' – anishsane 2013-02-24 06:37:38