Gunakan perintah berikut:
ps aux --sort -rss
Periksa di sini untuk penggunaan memori proses Linux lainnya
Metode cepat dan kotor adalah dengan menyalurkan output dari ps aux
ke sort
perintah:
$ ps aux | sort -rn -k 5,6
Contoh
$ ps aux | sort -rn -k 5,6
...
root 1584 0.0 0.0 22540 1236 ? S 07:04 0:01 hald-addon-storage: polling /dev/sr0 (every 2 sec)
root 1575 0.0 0.0 22536 872 ? S 07:04 0:00 /usr/libexec/hald-addon-generic-backlight
root 1574 0.0 0.0 22536 880 ? S 07:04 0:00 /usr/libexec/hald-addon-leds
root 1565 0.0 0.0 22536 876 ? S 07:04 0:00 /usr/libexec/hald-addon-rfkill-killswitch
saml 2507 0.0 0.0 22232 500 ? S 07:05 0:00 dbus-launch --sh-syntax --exit-with-session
root 1671 0.0 0.0 22156 936 ? Ss 07:04 0:00 xinetd -stayalive -pidfile /var/run/xinetd.pid
...
Ini tidak menangani tajuk kolom yang tercampur dengan keluaran, tetapi mudah diingat pada baris perintah, dan merupakan cara yang dapat diterima untuk melakukan apa yang Anda inginkan saat melihat jenis keluaran ini secara manual.
Contoh
root 1791 0.0 0.0 4140 536 tty2 Ss+ 07:04 0:00 /sbin/mingetty /dev/tty2
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 996 0.0 0.0 0 0 ? S 07:04 0:01 [kdmflush]
root 982 0.0 0.0 0 0 ? S 07:04 0:00 [kvm-irqfd-clean]
Tips lainnya
Tip tambahan adalah menyalurkan seluruh output ke perintah lain seperti less
. Hal ini memungkinkan Anda untuk melihat informasi satu halaman sekaligus dan juga menggunakan tombol panah dan tombol naik/turun halaman untuk menggulir bolak-balik melalui keluaran.
$ ps aux | sort -rn -k 5,6 | less
Jika keluaran Anda banyak, Anda juga dapat menggunakan -S
beralih ke lebih sedikit, yang akan memaksa semua keluaran tetap pada satu baris saja. Anda kemudian dapat menggunakan tombol panah untuk bergerak ke kiri/kanan/atas/bawah untuk melihat semuanya.
$ ps aux | sort -rn -k 5,6 | less -S
Mengurutkan dalam ps
Versi tertentu dari ps
memberikan kemampuan untuk menggunakan --sort
. Sakelar ini kemudian dapat mengambil kunci yang diawali dengan +
atau -
untuk menunjukkan urutan pengurutan...dari yang terbesar ke yang terbesar atau dari yang terbesar ke yang terkecil.
Contoh
vsz,-rss
$ ps aux --sort=vsz,-rss | head -5
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 2 0.0 0.0 0 0 ? S 07:03 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 07:03 0:00 [ksoftirqd/0]
root 4 0.0 0.0 0 0 ? S 07:03 0:01 [migration/0]
root 5 0.0 0.0 0 0 ? S 07:03 0:00 [watchdog/0]
+vsz,+rss
$ ps aux --sort=+vsz,+rss | head -5
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 2 0.0 0.0 0 0 ? S 07:03 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 07:03 0:00 [ksoftirqd/0]
root 4 0.0 0.0 0 0 ? S 07:03 0:01 [migration/0]
root 5 0.0 0.0 0 0 ? S 07:03 0:00 [watchdog/0]
-vsz,-rss
$ ps aux --sort=-vsz,-rss | head -5
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1832 0.0 0.0 2088924 3312 ? Sl 07:04 0:00 /usr/sbin/console-kit-daemon --no-daemon
saml 3517 0.2 1.2 2073196 100492 ? Sl 07:06 0:34 /home/saml/.dropbox-dist/dropbox
saml 3516 0.0 0.8 2071032 67388 ? Sl 07:06 0:07 /home/saml/.dropbox-dist/dropbox
saml 2657 0.1 0.7 1580936 57788 ? Sl 07:05 0:27 nautilus
Bahkan jika ps tidak mencerminkan memori sebenarnya yang digunakan, perintah ini cukup membantu.
ps -eo size,pid,user,command --sort -size | awk '{ hr=$1/1024 ; printf("%13.2f Mb ",hr) } { for ( x=4 ; x<=NF ; x++ ) { printf("%s ",$x) } print "" }'