現在、私はリモート環境で作業しており、psコマンドを使用して最も多くのプロセスを使用しているユーザーの数をソートしたいと思います。唯一の問題は、現在のコマンドで表示する必要があるrootユーザーが表示されないことです。最初の出力は私が探しているものであり、後者は現在私が受け取っているものです。
157 root
12 apache
11 brun1992
4 bb
2 postfix
2 hart4492
2 68
1 USER
1 sshd
1 rpcuser
私のコマンド:
ps -eo user=|sort|uniq -c | head -n 10 | sort -r $1
9 apache
6 au6620
5 ande7941
4 cwen4344
4 bb
3 dagg9715
2 evan8561
2 brun1992
2 alki2221
1 dbus
答え1
これは働きます:
ps -eo user|sort|uniq -c|sort -gr
sort -gr がコアです。
-g : 数値でソートします。
答え2
問題は、ソート前に開始することです。私の考えでは、あなたは最も一般的な10のユーザー名を見つけようとしているようです。まず@rakesh-nが言ったように、数字順にソートする必要があります。
しかし、問題は、uniqでユーザー名でソートされたリストを取得し、上位10個を選択して数でソートすることです。例を見て、すべてのユーザー名がaeで始まることを確認してください。
ps -eo user=|sort|uniq -c |sort-r $1 |head-n 10