psコマンド: プロセスの状況


前提


ドキュメント


はじめに

まずは、


ps --help

CentOS, Ubuntu: 以降procps-ng

Usage: ps [options]

Try 'ps --help ' or 'ps --help ' for additional help text.

For more details see ps(1).

Alpine(busybox): 以降busybox

BusyBox v1.29.3 (2019-01-24 07:45:07 UTC) multi-call binary.

Usage: ps [-o COL1,COL2=HEADER]

Show list of processes

-o COL1,COL2=HEADER Select columns for display


ps: オプションなし

procps-ng

  PID TTY          TIME CMD
31033 pts/3    00:00:00 bash
31552 pts/3    00:00:00 ps

busybox

PID   USER     TIME  COMMAND
    1 root      0:00 sh
    6 root      0:00 ps

ps -A: すべてのプロセス


ps -o: 出力項目を指定

busybox

ps: bad -o argument 'abc', supported arguments: user,group,comm,args,pid,ppid,pgid,etime,nice,rgroup,ruser,time,tty,vsz,sid,stat,rss

procps-ng

busyboxと同名の項目以外にも大量にあり、主な項目は、

ヘッダ名変更

-o pmem=メモリ使用率などと=でヘッダ表示を変更できる。

ps -o pid,pmem=メモリ%,comm=コマンド名
  PID メモリ% コマンド名
 9614        0.1 bash
19185        0.0 ps

ps -C: コマンド指定

# procps-ng
ps -C firefox,bash
  PID TTY          TIME CMD
 9738 pts/0    00:00:00 bash
 9954 ?        00:01:40 firefox
 9961 pts/1    00:00:00 bash
10665 pts/0    00:00:00 bash

ps --pid: PID指定

# procps-ng
ps -p 1 -o user,args
USER     COMMAND
root     /usr/lib/systemd/systemd --switched-root --system --deserialize 23

ps --user: ユーザ指定

# procps-ng
ps --user root -o pid,user,comm | head
  PID USER     COMMAND
    1 root     systemd
    2 root     kthreadd
    3 root     ksoftirqd/0

ps --sort: ソートする

# procps-ng
# メモリ使用率、降順で
ps -A -o comm,pmem,pcpu --sort=-pmem,pcpu | head
COMMAND         %MEM %CPU
firefox         10.6 11.4
gnome-shell      6.6  4.4
named            5.8  0.0
gnome-software   3.4  0.1

使用例