2012-10-15 50 views
0

在終端我們可以使用蘋果腳本,讓CPU的使用率整數值

top -l 2 -F -R | awk '/CPU usage/ && NR>5 {printf "%d", $7+0}' 

獲得CPU使用率的價值怎樣才能得到的值作爲蘋果腳本的整數? 我想這

set usedSpace to (do shell script "top -l 2 -F -R | awk '/CPU usage/ && NR>5 {printf "%d", $7+0}'") as integer 

和GOR錯誤

預期「」但發現未知的令牌

然後試圖這樣

set usedSpace to (do shell script "top -l 2 -F -R | awk '/CPU usage/ && NR>5 '; printf $5}") as integer 

,並得到了一個錯誤像這樣

錯誤「無法使\」CPU使用率:6.40%用戶,5.41%sys,88.17%空閒} \「 到類型整數」。從數量-1700 「CPU使用率:6.40%的用戶,5.41% 對稱,88.17%閒置}」 整數

任何人可以幫助我解決這個問題?

在此先感謝

回答

0

嘗試:

set usedSpace to (do shell script "top -l 2 -F -R | awk '/CPU usage/ && NR>5 {printf \"%d\", $7+0}'") as integer 

set usedSpace to (do shell script "top -l 2 -F -R | awk '/CPU usage/ && NR>5 '; printf $5}") as text 
+0

你能解釋的語法?我沒有得到它,我做錯了什麼,我感謝它的工作:) –

+0

你需要轉義%d周圍的引號才能正確傳遞到shell。 – adayzdone