Text-Processing
當我嘗試根據正在執行的程序數對使用者進行排序時,為什麼根程序不會排序?
目前我在一個遠端環境中工作,我想使用 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
這將起作用:
ps -eo user|sort|uniq -c|sort -gr
sort -gr 是它的關鍵。
> > -g :按數字排序。 > > >
問題是你在排序之前有頭腦。我認為您正在嘗試查找前十名使用的使用者名。首先,正如@rakesh-n 所說,您需要按數字排序。
但問題是你從 uniq 中得到一個按使用者名排序的列表,然後你獲得前十名,然後才按計數排序。看看你的例子,注意所有的使用者名都以 ae 開頭
ps -eo 使用者=|排序|uniq -c | 排序-r $1 | 頭 -n 10