LINUX.ORG.RU

я бы так сделал:

ps aux|awk '{print $1}'|sort |uniq|while read user;do mem=`ps axo user,rss|grep $user|awk '{s+=$2}END{print s}'`;echo "$user $mem" ;done|sort -k 2 -n

конечно, неоптимальное решение...

dreamer ★★★★★
()
Ответ на: комментарий от dreamer

Ничего, сойдёт. Тоже думал о чём-то таком, но голову ломать на тему awk'а не хотелось :)

...

Уже неожиданность. Память жрёт процесс, на который не думал :)

KRoN73 ★★★★★
() автор топика
Ответ на: комментарий от anon_666

Предыдущий вариант удобнее :)

KRoN73 ★★★★★
() автор топика
Ответ на: комментарий от dreamer

На awk писать надо так:

ps aux | awk '{mem[$1]+=$5}; END {for (u in mem) {print u" : "mem[u]}}'
sdio ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.