2016-06-16 17 views

答えて

1

パイプtopとCPU使用率カラム加算:awkコマンドが行7より大きい行(上から)は、」言うこと

top -b -n 1 -u username | awk 'NR>7 { sum += $9; } END { print sum; }' 

を、フィールド9 $9に番号を追加し、それを格納します変数sumにあります。パイプされたtopコマンドのすべての行が終了したら、変数sum "の値を出力します。


-uフラグがシステム上で動作していない場合は、あなただけのNR>7状態で、ユーザ名検索を固執することができます:あなたが使用パーセントを印刷したい場合は

top -b -n 1 | awk 'NR>7 && $2=="root" { sum += $9 } END { print sum }' 

各ユーザーが一番上にリストされていれば、その2番目の条件とスイッチ合計を配列にすることができます。

top -b -n 1 | awk 'NR>7 {users[$2]+=($9)} END {for(user in users){print user,users[user]}}' 

最後の1つです。 %cpuはシステムのコア数で割る必要があると私は信じています。私は100ポンド以上の数字をここで見ることができると信じています。

+0

ありがとうございました!行7(なぜなら)が行7よりも大きい理由は? – kellyS723

+0

パイプなしで 'top'コマンドを実行してください。行8で開始されるプロセスのリストが表示されます。そこで、使用されているCPUの量を8行目から開始して最後まで追加します。 – JNevill

+0

私は未知の議論uを得ているので、ユーザがユーザ名と等しい場合にsumに加算することができるかどうか疑問に思っています。どうすればいい? – kellyS723

関連する問題