GNU/Linux >> Belajar Linux >  >> Linux

Menyortir proses berdasarkan penggunaan memori

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 "" }'

Linux
  1. Cara Menemukan Proses Berjalan Teratas berdasarkan Memori dan Penggunaan CPU

  2. Mengukur Penggunaan Ram Suatu Program?

  3. Temukan 10 Proses Berjalan Teratas berdasarkan Memori dan Penggunaan CPU

  1. Bagaimana cara melihat proses teratas yang diurutkan berdasarkan penggunaan memori yang sebenarnya?

  2. Bagaimana cara membatasi penggunaan memori aplikasi?

  3. penggunaan dan pengubahan ukuran tmpfs

  1. Penggunaan Memori Linux

  2. Linux – Penggunaan Memori Nyata?

  3. Penggunaan memori puncak dari suatu proses