0
このコードを表示するユーザの処理負荷率(%CPU)Ploblem(表示pr0cess)のPSのLinux]
ps aux | awk 'NR!=1{print $1}' | sort | uniq | awk '{print "ps aux | grep "$1}' | awk '{printf $0; printf " | awk"; printf "{sum +="; print "$3}" }' | sed "s/{/ '{/g" | sed "s/3}/3} END {print \$1,sum}'/g" > 0.out
chmod 755 0.out
bash 0.out
このコードは同じいくつかのOSにユーザ(UBUNTU)例を示して0 ルート0 ルート1.8 ルート1.3 ルート0 ルート1.1
が、いくつかのOSの例2上の別のユーザー(UNIQ)を示しています ルート11.5 デーモン0 syslog 0 ....
どのようにしてexample2だけ書くことができますか?diff3rentユーザーの%cpuが必要です。
観測のカップル。 'ソート| uniq'を 'sort -u'に単純化することができます。あなたのawkコードの 'printf'呼び出しは' print'でしょう。文字列に ''%''文字が含まれていると、 'printf'は誤動作します。コマンドごとに1つずつ複数の行に分割すると、コードを読みやすくなります。 '\\'文字を継続行として使用してください。あなたがやっていることをやるためのもっと簡単な方法があると確信しています。私は後で見てみるか、誰か他の人がやります。 –