linux:commands:process

プロセス関連

現在実行されているプロセスのスナップショットを表示する。

$ ps

    PID TTY          TIME CMD
 851455 pts/0    00:00:00 zsh
 854417 pts/0    00:00:00 ps

ps fu オプションで、ユーザー、階層表示する。

$ ps fu

USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
tomoyan   851455  0.0  0.4   8888  4560 pts/0    Ss   04:42   0:00 -zsh
tomoyan   854512  0.0  0.4   8244  4608 pts/0    R+   05:05   0:00  \_ ps fu
tomoyan    15144  0.0  0.1  10096  1868 pts/1    Ss    3月17   0:02 -zsh
tomoyan   852684  4.9  3.0 867620 29896 pts/1    Sl+  04:48   0:52  \_ /home/tomoyan/.local/pipx/venvs/jupyter
tomoyan   853162  0.0  0.5   8960  5448 pts/2    Ss+  04:49   0:00      \_ /usr/bin/zsh
tomoyan   853311  0.0  0.0      0     0 pts/1    Z+   04:49   0:00      \_ [node] <defunct>

ps aux オプションで、ユーザー、CPU使用率、メモリー使用率などを表示する。

$ ps aux

USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root          1  0.1  0.2 105560 12216 ?        Ss   17:52   0:14 /usr/lib/systemd/systemd --switched-root
root        607  0.0  0.0  32760  1840 ?        S<sl 17:52   0:00 /sbin/auditd
root        634  0.0  0.2 258548 16444 ?        Ssl  17:52   0:05 /usr/sbin/rsyslogd -n
root        636  0.0  0.0  17112  5932 ?        Ss   17:52   0:02 /sbin/rngd -f
root        637  0.0  0.0  80080  3128 ?        Ssl  17:52   0:06 /usr/sbin/irqbalance --foreground
root        638  0.0  0.0   9592  5096 ?        Ss   17:52   0:00 /usr/libexec/bluetooth/bluetoothd
root        639  0.0  0.1 316256  9892 ?        Ssl  17:52   0:00 /usr/sbin/ModemManager
root        642  0.0  0.1  53936 11084 ?        Ss   17:52   0:00 /usr/bin/VGAuthService -s
root        643  0.0  0.0   7716  4004 ?        Ss   17:52   0:00 /usr/sbin/smartd -n -q never
root        644  0.0  0.0  17768  5464 ?        Ss   17:52   0:00 /usr/lib/systemd/systemd-machined
root        645  0.0  0.1 253708 11088 ?        Ss   17:52   0:00 /usr/sbin/sssd -i --logger=files
dbus        648  0.0  0.0  22960  5292 ?        Ssl  17:52   0:01 /usr/bin/dbus-daemon --system --address=
polkitd     649  0.0  0.3 1996000 22244 ?       Ssl  17:52   0:00 /usr/lib/polkit-1/polkitd --no-debug
root        651  3.6  0.2 342680 13108 ?        Ssl  17:53   5:30 /usr/bin/vmtoolsd
chrony      657  0.0  0.0  88744  3240 ?        S    17:53   0:02 /usr/sbin/chronyd
root        661  0.0  0.0 263744  3532 ?        Ssl  17:53   0:00 /usr/sbin/gssproxy -D
root        685  0.0  0.1 472364 11580 ?        Ssl  17:53   0:00 /usr/sbin/abrtd -d -s
root        708  0.0  0.5 332184 35932 ?        Ssl  17:53   0:01 /usr/bin/python3 /usr/sbin/firewalld --n
root        735  0.0  0.2 254468 12156 ?        S    17:53   0:00 /usr/libexec/sssd/sssd_be --domain impli
root        739  0.0  0.1 302116 11296 ?        Ss   17:53   0:00 /usr/bin/abrt-dump-journal-core -D -T -f
root        740  0.0  0.2 347688 17984 ?        Ss   17:53   0:01 /usr/bin/abrt-dump-journal-oops -fxtD
root        741  0.0  0.1 294068 11132 ?        Ss   17:53   0:00 /usr/bin/abrt-dump-journal-xorg -fxtD
root        742  0.0  0.5 273656 30480 ?        S    17:53   0:01 /usr/libexec/sssd/sssd_nss --uid 0 --gid
root        743  0.0  0.1  27976  8772 ?        Ss   17:53   0:01 /usr/lib/systemd/systemd-logind
root        750  0.0  0.3 547924 19840 ?        Ssl  17:53   0:02 /usr/sbin/NetworkManager --no-daemon
root        769  0.0  0.4 480052 27084 ?        Ssl  17:53   0:02 /usr/bin/python3 -Es /usr/sbin/tuned -l
root        770  0.0  0.1  27088  6900 ?        Ss   17:53   0:00 /usr/sbin/sshd -D -oCiphers=aes256-gcm@o
root        774  0.0  0.7 1766520 45400 ?       Ssl  17:53   0:03 /usr/sbin/libvirtd
root        777  0.0  0.0  18156  2260 ?        Ss   17:53   0:00 /usr/sbin/atd -f
root        782  0.0  0.0 225424  3604 ?        Ss   17:53   0:00 /usr/sbin/crond -n
root        786  0.0  0.0 221672  1492 tty1     Ss+  17:53   0:00 /sbin/agetty -o -p -- \u --noclear tty1
dnsmasq    1203  0.0  0.0  24252  2040 ?        S    17:53   0:00 /usr/sbin/dnsmasq --conf-file=/var/lib/l
root       1204  0.0  0.0  24224   408 ?        S    17:53   0:00 /usr/sbin/dnsmasq --conf-file=/var/lib/l
dnsmasq    1232  0.0  0.0  24324  2512 ?        S    17:53   0:00 /usr/sbin/dnsmasq --conf-file=/var/lib/l
root       1281  0.0  0.2 252740 12372 ?        Ss   17:53   0:00 /usr/sbin/virtlogd
qemu       1300  7.1  9.8 3008152 599500 ?      Sl   17:53  10:40 /usr/bin/qemu-system-x86_64 -machine acc
qemu       1341 13.4 19.2 3543676 1167724 ?     Sl   17:53  19:58 /usr/bin/qemu-system-x86_64 -machine acc
qemu       1398  8.2  9.9 2998624 605712 ?      Sl   17:53  12:21 /usr/bin/qemu-system-x86_64 -machine acc
qemu       1445  4.5  9.7 3032820 593312 ?      Sl   17:53   6:48 /usr/bin/qemu-system-x86_64 -machine acc
root       1470  0.0  0.1  15832  9240 ?        S    17:54   0:08 /sbin/dhclient -d -q -sf /usr/libexec/nm
root       2053  0.2  0.1  39168  9812 ?        Ss   18:16   0:16 sshd: tomoyan [priv]
tomoyan    2075  0.0  0.1  19776  8932 ?        Ss   18:17   0:05 /usr/lib/systemd/systemd --user
tomoyan    2077  0.0  0.0 127344  4580 ?        S    18:17   0:00 (sd-pam)
tomoyan    2083  0.0  0.0  39168  5404 ?        R    18:17   0:04 sshd: tomoyan@pts/4
tomoyan    2084  0.1  0.0 225876  4892 pts/4    Ss   18:17   0:12 -bash
〜省略〜
tomoyan    4234  0.0  0.0 228192  3972 pts/4    R+   20:22   0:00 ps aux

$ info ps

PS(1)                                       Linux User's Manual                                       PS(1)

名前
ps - 現在実行されているプロセスのスナップショットを表示する

書式
ps [options]

説明
ps はアクティブなプロセスのうち選択されたものの情報を表示する。 プロセスの選択や表示される情報を繰り返し更
新したい場合は、 代わりに top(1) を使うこと。

このバージョンの ps が受け付けるオプションにはいくつかの種類がある。
1   UNIX オプション。まとめることが可能で、前にはダッシュを置かなければならない。
2   BSD オプション。まとめることが可能で、ダッシュを使ってはならない。
3   GNU ロングオプション。前に二つのダッシュを置く。

別々の種類のオプションは自由に混在させてよいが、  衝突が起こるかもしれない。 機能的には全く等しい、同義のオ
プションがいくつかある。 これは多くの標準と ps 実装に対して、 この ps が互換性を持っているためである。

"ps -aux" は "ps aux" とは異なることに注意すること。 POSIX と UNIX 標準では、"ps -aux" は "x"  という名前の
ユーザーが 所有する全てのプロセスを表示し、 かつ -a オプションで選択される全てのプロセスを表示する。 "x" と
いう名前のユーザーが存在しない場合、  この ps は代わりに "ps aux" というコマンドとして解釈され、 警告を表示
する。 この動作は昔のスクリプトと慣習からの移行の助けになることを意図している。  これは脆くて変更される可能
性があるので、 これに依存すべきではない。

デフォルトでは、ps はカレントユーザーと 同じ実効 (effective) ユーザー ID (EUID) を持ち、 かつ呼び出した端末
と同じ端末に関連づけられている 全てのプロセスを選択する。 この場合、プロセス ID (PID)・プロセスに関連づけら
れている端末  (TTY)・  [dd-]hh:mm:ss という形式の累積 CPU 時間 (TIME)・ 実行ファイル名 (CMD) が表示される。
出力はデフォルトではソートされない。

BSD 形式オプションを使うと、 デフォルトの表示にプロセス状態 (STAT) が追加され、  実行ファイル名の代わりにコ
マンドライン引き数  (COMMAND) が表示される。 これは PS_FORMAT 環境変数で上書きできる。 BSD 形式オプションを
使った場合、 選択されるプロセスも変わり、 ユーザが所有する他の端末 (TTY) 上のプロセスも含まれるようになる。
言い換えれば、選択されるプロセスは、全てのプロセスから 他のユーザーが所有するプロセスと端末上にないプロセス
を除いたものに 設定されると説明できる。 以下でオプションが「等しい  ("identical")」と書かれているものについ
ては、 これらの違いは除いて考える。 したがって、-M は Z と等しく、他も同様である。

以下で記述されているものを除き、  個々のプロセス選択オプションで選択されたプロセスは足し合わされる。 デフォ
ルトの選択は破棄され、選択されたプロセスは 表示されるプロセス群に追加される。  したがって、あるプロセスは、
指定された選択基準のどれかひとつに合致すれば、表示される。

例
標準的な書式を使ってシステム上の全てのプロセスを表示する:
   ps -e
   ps -ef
   ps -eF
   ps -ely

BSD 書式を使ってシステム上の全てのプロセスを表示する:
   ps ax
   ps axu

プロセスツリーを表示する:
   ps -ejH
   ps axjf

スレッドに関する情報を取得する:
   ps -eLf
   ps axms

セキュリティ情報を取得する:
   ps -eo euser,ruser,suser,fuser,f,comm,label
   ps axZ
   ps -eM

root (実 (real) ID と実効 ID) として実行されている全てのプロセスを
   ユーザ形式で表示する: ps -U root -u root u

全てのプロセスをユーザー定義フォーマットで表示する:
   ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm
   ps axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm
   ps -eopid,tt,user,fname,tmout,f,wchan

syslogd のプロセス ID のみを表示する:
   ps -C syslogd -o pid=

PID 42 の名前のみを表示する。
   ps -p 42 -o comm=

簡易プロセス選択
-A              全てのプロセスを選択する。-e と等しい。

-N              指定された条件を満たさないプロセスのみを選択する (選択の否定)。 --deselect と等しい。

T               この端末の全てのプロセスを選択する。 引き数なしの t オプションと等しい。

-a              セッションリーダ (getsid(2) を参照) と端末を持たないプロセスを除く、 全てのプロセスを表示す
                る。

a               BSD  形式の ("-" のない) オプションが使用された場合、 または ps の流儀 (personality) の設定
                が BSD 形式の場合に、 全てのプロセスの集合に対して課される 「自分自身のみ」という BSD  形式
                の制約をなくす。  この方式で選択されたプロセスの集合は、 他の手段で選ばれたプロセスの集合に
                加えられる。 このオプションの別の説明は以下の通り: このオプションを指定すると、  ps  は端末
                (tty)  を持つ全てのプロセスをリストする。 また x オプションと共に指定すると、全てのプロセス
                をリストする。

-d              セッションリーダを除く全てのプロセスを選択する。

-e              全てのプロセスを選択する。-A と等しい。

g               本当に全てのプロセスを選択する。セッションリーダも含む。 このフラグは旧式で、  将来のリリー
                スでは廃止されるかもしれない。  この振る舞いは通常 a フラグで暗黙に有効になり、 sunos4 の流
                儀で操作するときにのみ役立つ。

r               実行中のプロセスのみに選択を限定する。

x               BSD 形式の ("-" のない) オプションが使用された場合、 または ps の流儀の設定が BSD  形式の場
                合に、 全てのプロセスの集合に対して課される 「端末を持たなければならない」という BSD 形式の
                制約をなくす。  この方式で選択されたプロセスの集合は、 他の手段で選ばれたプロセスの集合に加
                えられる。 このオプションの別の説明は以下の通り: このオプションを指定すると、ps  は呼び出し
                たユーザーの所有する (ps と同じ EUID の) 全てのプロセスをリストする。 また a オプションと共
                に指定すると、全てのプロセスをリストする。

--deselect      指定された条件を満たさないプロセスのみを選択する (選択の否定)。 -N と等しい。

リストによるプロセス選択
これらのオプションは空白区切りまたはコンマ区切り形式の      1      つの引き数を受け付け、複数回指定できる。
例: ps -p "1 2" -p 3,4

-C  cmdlist     コマンド名で選択する。
                実行ファイル名が cmdlist に含まれるプロセスを選択する。

-G  grplist     実グループ ID または実グループ名で選択する。
                実グループ名または実グループ ID が grplist リストに含まれるプロセスを選択する。  実グループ
                ID とはプロセスを作成したユーザーのグループである。 getgid(2) を参照。

U  userlist     実効ユーザー ID (EUID) または実効ユーザー名で選択する。
                実効ユーザー名または実効ユーザー ID が userlist に含まれるプロセスを選択する。 実効ユーザー
                ID はそのファイルアクセス許可が プロセスによって使用される (geteuid(2) を参照)。 -u, --user
                と等しい。

-U  userlist    実ユーザー ID (RUID) または実ユーザー名で選択する。
                実ユーザー名または実ユーザー ID が userlist に含まれるプロセスを選択する。 実ユーザー ID は
                プロセスを作成したユーザーを識別する。 getuid(2) を参照。

-g  grplist     セッションと実効グループ名の OR で選択する。
                セッションによる選択は多くの標準で指定されているが、  実効グループ ID による選択は、 いくつ
                かのオペレーティングシステムで使用されている論理的な動作である。 この ps  はリストが  (セッ
                ションを表す)  数値だけの場合、 セッションで選択する。 グループ ID 番号による選択は、他のグ
                ループ名が 指定されている場合にのみ動作する。 -s と --group オプションを参照すること。

p  pidlist      プロセス ID で選択する。-p, --pid と等しい。

-p  pidlist     PID で選択する。
                プロセス ID 番号が pidlist にあるプロセスを選択する。 p, --pid と等しい。

-s  sesslist    セッション ID で選択する。
                sesslist で指定されたセッション ID のプロセスを選択する。

t  ttylist      端末 (tty) で選択する。 -t, --tty とほぼ等しいが、 空の ttylist を使うことで、 ps  と関連づ
                けられている端末を表すことができる。  T オプションを使う方が、t と空の ttylist を使うより、
                すっきりしている。

-t  ttylist     端末 (tty) で選択する。
                ttylist で指定された端末と関連づけられているプロセスを選択する。 端末 (テキスト出力のための
                tty またはスクリーン) は、 いくつかの形式で指定できる: /dev/ttyS1, ttyS1,  S1.  単なる  "-"
                は、どの端末にも属さない プロセスを選択するのに使用される。

-u  userlist    実効ユーザー ID (EUID) または実効ユーザー名で選択する。
                userlist  にある実効ユーザー名 または実効ユーザー ID のプロセスを選択する。 実効ユーザー ID
                は、プロセスによってファイルアクセス許可が 使用されるユーザーを表す  (geteuid(2)  を参照)。
                U, --user と等しい。

--Group  grplist
                実グループ ID (RGID) または実グループ名で選択する。-G と等しい。

--User  userlist
                実ユーザー ID (RUID) または実ユーザー名で選択する。-U と等しい。

--group  grplist
                実効グループ ID (EGID) または実効グループ名で選択する。
                実効グループ名または実効グループ ID が grouplist にあるプロセスを選択する。 実効グループ ID
                は、プロセスによってファイルアクセス許可が  使用されるグループを表す  (geteuid(2) を参照)。
                -g は、しばしば --group の代わりとされる。

--pid  pidlist  プロセス ID で選択する。-p, p と等しい。

--ppid  pidlist 親プロセスのプロセス ID で選択する。 親プロセスの ID が pidlist  にあるプロセスを選択する。
                つまり、pidlist にリストされているプロセスの 子プロセスを選択する。

--sid  sesslist セッション ID で選択する。-s と等しい。

--tty  ttylist  端末で選択する。-t, t と等しい。

--user  userlist
                実効ユーザー ID (EUID) または実効ユーザー名で選択する。 -u, U と等しい。

-123            --sid 123 と等しい。

123             --pid 123 と等しい。

出力フォーマットの制御
これらのオプションは、ps  によって表示される情報を選択するのに使用される。 出力は流儀によって異なる可能性が
ある。

-F              特別に完全なフォーマット。 -F が暗黙のうちに指定する -f オプションを参照すること。

-O  format      -o                               と似ているが、いくつかのデフォルトカラムをプリロードする。
                -o pid,format,state,tname,time,command  または -o pid,format,tname,time,cmd と等しい。 下記
                の -o を参照すること。

O  format       プリロードされた o (上書きされる)。
                BSD の O オプションは、-O (ユーザー定義の出力フォーマット。  いくつかのよく使われるフィール
                ドは定義済) オプションのように動作したり、 あるいはソートの順序指定にも用いることができる。
                このオプションにどちらの動作をさせるかは、 ヒューリスティックな手法を用いて決定する。 (ソー
                トあるいはフォーマットについて) 望みの動作をさせるには、 その他のオプションを指定すること。
                (例えば、-O または --sort と一緒に指定する)。

                フォーマットオプションとして使用する場合は、 BSD の流儀で -O を指定するのと等しい。

-M              セキュリティデータのカラムを追加する。 Z と同じ。(SE Linux 用)。

X               レジスタフォーマット

Z               セキュリティデータのカラムを追加する。 -M と同じ。(SE Linux 用)。

-c              -l オプションとは異なるスケジューリング情報を表示する。

-f              完全なフォーマットでリストする。 このオプションは、他の多くの UNIX 形式オプションと組み合わ
                せることが可能で、  その他のカラムを追加する。 またコマンドライン引き数も表示される。 -L と
                組み合わせて使うと、 NLWP (スレッド数), LWP (スレッド ID) カラムが追加される。 フォーマット
                キーワード args と comm については、 c オプションを参照すること。

j               BSD のジョブ制御フォーマット。

-j              jobs フォーマット。

l               BSD の長いフォーマット。

-l              長いフォーマット。 -y オプションは、このオプションと組み合わせることで、 しばしば役に立つ。

o  format       ユーザー定義フォーマットを指定する。 -o, --format と等しい。

-o  format      ユーザー定義フォーマット。
                format は空白区切りまたはコンマ区切りリストの形式の 1 つの引き数である。 これにより各出力カ
                ラムを指定する方法を提供している。   「標準フォーマット指定子」のセクションで説明されている
                キーワードを認識する。                                       ヘッダは望みのものに変更できる
                (ps -o pid,ruser=RealUser -o comm=Command)。                   全てのカラムヘッダが空の場合
                (ps -o pid= -o comm=)、 ヘッダ行は出力されない。 ヘッダの幅が広い場合は、カラム幅が増やされ
                る。             これは             WCHAN            のようなカラムの幅を広げるのに使われる
                (ps -o pid,wchan=WIDE-WCHAN-COLUMN -o comm)。 明示的な幅の制御 (ps opid,wchan:42,cmd)  も提
                供されている。 ps -o pid=X,comm=Y の挙動は流儀によって変わる。 "X,comm=Y" という名前の 1 つ
                のカラムが出力される場合もあるし、 "X" と "Y" という名前の 2 つのカラムが出力される場合もあ
                る。  疑わしい場合は、-o  オプションを複数使うこと。 デフォルトを望みのものにしたい場合は、
                PS_FORMAT 環境変数を使うこと。 DefSysV と DefBSD は、 デフォルトの UNIX または BSD カラムを
                選択するためのマクロである。

s               シグナルフォーマット。

u               ユーザー指向のフォーマット。

v               仮想メモリフォーマット。

-y              フラグを表示しない。addr の代わりに rss を表示する。 このオプションは -l と一緒のときにのみ
                使用できる。

--format  format
                ユーザー定義フォーマット。 -o, o と等しい。

--context       セキュリティコンテキストフォーマット (SE Linux 用)。

出力修正指定
-H              プロセスを階層表示する (森)。

N  namelist     名前リストファイルを指定する。 -n と等しい。上記の -n を参照すること。

O  order        ソート順の指定 (上書きされる)。
                BSD の O オプションは、-O (ユーザー定義の出力フォーマット。  いくつかのよく使われるフィール
                ドは定義済) オプションのように動作したり、 あるいはソートの順序指定にも用いることができる。
                このオプションにどちらの動作をさせるかは、 ヒューリスティックな手法を用いて決定する。 (ソー
                トあるいはフォーマットについて) 望みの動作をさせるには、 その他のオプションを指定すること。
                (例えば、-O または --sort と一緒に指定する)。

                ソートに用いる場合、廃止された  BSD  の  O オプションの文法は O[+|-]k1[,[+|-]k2[,...]] であ
                る。 「廃止されたソートキー」にある 1 文字の短いキーのシーケンスを k1, k2,  ...  に指定すれ
                ば、 プロセスリストを複数レベルでソートできる。

                "+"  は現在では省略可能な指定で、  単にデフォルトのソート方向を繰り返しているに過ぎない。 O
                ソートと O フォーマットを区別する助けになる。 "-" はその直後のキーのソート順を逆順にする。

S               死んだ子プロセスの CPU 使用量といった情報を、親プロセスに加算する。  親プロセスが寿命の短い
                子プロセスを繰り返し fork して処理を行なうような システムを調べるのに役に立つ。

c               本当のコマンド名を表示する。   これは  argv  の値ではなく、実行ファイル名から導き出される。
                よって、コマンド引き数とそれを修正したもの (setproctitle(3) を参照)  は表示されない。  実際
                上、このオプションは  args  フォーマットキーワードを  comm フォーマットキーワードに置き換え
                る。 これは -f フォーマットオプションを、 様々な BSD 形式のフォーマットオプション (通常は全
                てのオプションがコマンド引き数を表示する) とともに 使う場合に役に立つ。 -f オプション、およ
                びフォーマットキーワード args とcomm を参照すること。

e               コマンドの後に環境を表示する。

f               ASCII アートでプロセス階層を表示する (森)。

h               へッダ行を表示しない (また BSD 流儀の場合はスクリーンごとに 1 つのへッダ行)
                h オプションには問題がある。 標準的な BSD の ps では、 このオプションは出力の各ページにヘッ
                ダを出力することになるが、 古い Linux の ps ではヘッダを全く出力しないことになる。 この  ps
                では  Linux  の利用法に倣い、ヘッダを出力しない。 ただし別途 BSD の流儀が選択されていれば、
                出力の各ページにヘッダを出力するようになる。 長いオプションである --headers や --no-headers
                を使えば、 現在の流儀に関係なく、各ページにヘッダを出力するか、  全くヘッダを出力しないかを
                選択することができる。

k  spec         ソート順を指定する。 ソート文法は [+|-]key[,[+|-]key[,...]] である。 複数文字のキーは「標準
                フォーマット指定子」のセクションから選ぶこと。 デフォルトのソートの方向は数値順・辞書順とも
                に昇順なので、"+" は省略してよい。 --sort と等しい。 例:
                ps jaxkuid,-ppid,+pid
                ps axk comm o comm,args
                ps kstart_time -ef

-n  namelist    名前リストファイルを指定する。 N と等しい。
                WCHAN  の表示を正しく行うには、 名前リストファイルが必要である。 正しい出力のためには、名前
                リストファイルは現在の Linux カーネルに 正確に一致するものでなければならない。 このオプショ
                ンを指定しない場合、 名前リストのデフォルトの検索パスは以下の通り:

                     $PS_SYSMAP
                     $PS_SYSTEM_MAP
                     /proc/*/wchan
                     /boot/System.map-`uname -r`
                     /boot/System.map
                     /lib/modules/`uname -r`/System.map
                     /usr/src/linux/System.map
                     /System.map

n               WCHAN と USER を数値で出力する (UID と GID の全てのタイプを含む)。

-w              出力幅を広げる。このオプションを 2 つ指定すると、幅の制限がなくなる。

w               出力幅を広げる。このオプションを 2 つ指定すると、幅の制限がなくなる。

--cols  n       スクリーンの幅を指定する。

--columns  n    スクリーンの幅を指定する

--cumulative    死んだ子プロセスも (親プロセスへの加算として) 含める。

--forest        ASCII アートでプロセス階層を表示する。

--headers       ヘッダ行を繰り返す。出力の 1 ページ毎に 1 行。

--no-headers    ヘッダ行を一切表示しない。

--lines  n      スクリーンの行数を設定する。

--rows  n       スクリーンの行数を設定する。

--sort  spec    ソート順を指定する。 ソートの文法は [+|-]key[,[+|-]key[,...]] である。 複数文字のキーは「標
                準フォーマット指定子」セクションから選ぶこと。 デフォルトのソートの方向は数値順・辞書順とも
                に昇順なので、"+" は任意である。 k と等しい。 例: ps jax --sort=uid,-ppid,+pid

--width  n      スクリーンの幅を指定する

スレッド表示
H               スレッドをプロセスのように表示する。
-L              可能ならば LWP と NLWP カラムをつけてスレッドを表示する。
-T              可能ならば SPID カラムをつけてスレッドを表示する。
m               プロセスの後にスレッドを表示する。
-m              プロセスの後にスレッドを表示する。

その他の情報
L               全てのフォーマット指定子をリストする。
-V              procps のバージョンを表示する。
V               procps のバージョンを表示する。
--help          ヘルプメッセージを表示する。
--info          デバッグ情報を表示する。
--version       procps のバージョンを表示する。

注意
この ps は /proc にある仮想ファイルを読み込んで動作する。 この ps は kmem に suid する必要はなく、 動作にい
かなる特権も必要としない。 この ps に特別な許可属性を与えないようにすること。

この ps が WCHAN の表示を正しく行うには、 名前リストファイルにアクセスする必要がある。 2.6 より前のカーネル
では、System.map ファイルが インストールされていなければならない。

現在のところ CPU 使用率は、プロセスの生存期間中に 実行に利用した時間のパーセンテージで表される。 これは理想
的ではなく、ps が準拠すべき標準に準拠していない。  CPU 使用率は足し合わせても正確に  100%  になることは少な
い。

SIZE フィールドと RSS フィールドには、プロセスの一部 (page tables, kernel stack, struct thread_info, struct
task_struct)  が 含まれない。 これらは最低 20 Ki バイト以上あり、必ずメモリに常駐している。 SIZE はプロセス
の仮想サイズ (code+data+stack) である。

<defunct> マークがついたプロセスは死んだプロセス (ゾンビ) である。 これらは親プロセスによって正しく消去され
ていないために残っている。 これらのプロセスは、親プロセスが終了すると init(8) によって消去される。

プロセスフラグ
これらの値の合計は、flags 出力指定子で提供される "F" カラムに表示される。
1    fork されたが exec されていない。
4    スーパーユーザー権限を使っている。

プロセスの状態コード
s, stat, state 出力指定子 (ヘッダ "STAT" または "S") がプロセス状態の説明のために 表示する値を以下に示す。
D    割り込み不可能なスリープ状態 (通常 IO 中)
R    実行中または実行可能状態 (実行キューにある)
S    割り込み可能なスリープ状態 (イベントの完了を待っている)
T    ジョブ制御シグナルまたはトレースされているために停止中の状態
W    ページング状態 (2.6.xx カーネルからは無効)
X    死んだ状態 (見えるべきではない)
Z    終了したが、親プロセスによって回収されなかった、 消滅した (ゾンビ) プロセス

BSD 形式で stat キーワードが用いられたときは、 以下の添付文字が表示されることがある。
<    優先度の高いプロセス (他のユーザーに対して良くない)
N    優先度の低いプロセス (他のユーザーに対して良い)
L    実メモリのページをロックして利用している (リアルタイム処理やカスタム IO 向け)
s    セッションリーダ
l    マルチスレッド化されている (NPTL pthreads が行うように、CLONE_THREAD が使われている)
+    フォアグラウンドのプロセスグループに含まれている

廃止されたソートキー
これらのキーは BSD の O オプションで使用される (ソートに使われるとき)。 GNU の --sort  オプションはこれらの
キーを使わないが、 下記の「標準的なフォーマット指定子」のセクションで説明されている 指定子を使用する。 ソー
トで使用される値は、ps が内部で使用する値であり、 出力フォーマットフィールドで使用される 「加工 (cook) され
た」値ではない点に注意すること  (例えば端末  (tty) でソートする場合は、デバイス番号でソートするのであって、
表示される端末名でソートするのではない)。 加工された値でソートしたい場合は、 ps の出力を sort(1) コマンドに
パイプすること。

キー   長い形式     説明
c      cmd          実行ファイルの短い名前
C      pcpu         cpu 使用率
f      flags        フラグ (長い形式の F フィールドの書式)
g      pgrp         プロセスのグループ ID
G      tpgid        制御端末プロセスグループ ID
j      cutime       累積したユーザー時間
J      cstime       累積したシステム時間
k      utime        ユーザー時間
m      min_flt      マイナーページフォルトの回数
M      maj_flt      メジャーページフォルトの回数
n      cmin_flt     マイナーページフォルトの累積数
N      cmaj_flt     マイナーページフォルトの累積数
o      session      セッション ID
p      pid          プロセス ID
P      ppid         親プロセスのプロセス ID
r      rss          常駐セットの大きさ
R      resident     常駐ページ数
s      size         メモリサイズ (キロバイト単位)
S      share        占めているページの量
t      tty          制御端末のデバイス番号
T      start_time   プロセスが起動した時刻
U      uid          ユーザー ID 番号
u      user         ユーザー名
v      vsize        仮想メモリの全サイズ (kB 単位)
y      priority     カーネルスケジューリングの優先度

AIX フォーマット記述子
この ps は AIX のフォーマット記述子をサポートしている。 これは printf(1) や printf(3) の 書式コードと似たよ
うな動作をする。 例えば通常のデフォルト出力は ps -eo "%p %y %x %c" のようにつくることができる。  通常のコー
ドは次のセクションで説明されている。
コード   通常形式   ヘッダ
%C       pcpu       %CPU
%G       group      GROUP
%P       ppid       PPID
%U       user       USER
%a       args       COMMAND
%c       comm       COMMAND
%g       rgroup     RGROUP
%n       nice       NI
%p       pid        PID
%r       pgid       PGID
%t       etime      ELAPSED
%u       ruser      RUSER
%x       time       TIME
%y       tty        TTY
%z       vsz        VSZ

標準フォーマット指定子
出力フォーマット  (たとえば -o オプション) を制御したり、 GNU 形式の --sort オプションで 選択されたプロセス
をソートしたりするための いくつかのキーワードがある。

例:  ps -eo pid,user,args --sort user

このバージョンの ps は 他の ps の実装で使われている多くのキーワードを認識しようとする。

以下のユーザー定義フォーマット指定子はスペースを含むことができる: args, cmd, comm,  command,  fname,  ucmd,
ucomm, lstart, bsdstart, start.

いくつかのキーワードはソートには使えない。

コード     ヘッダ   説明

%cpu       %CPU     プロセスの cpu 使用率は "##.#" というフォーマットである。 現在のところ CPU 使用率は、プ
                    ロセスの生存期間中に  実行に利用した時間のパーセンテージで表される。 これを全部足しても
                    100% になることは (よほど幸運でなければ) ない。 (別名 pcpu)。

%mem       %MEM     マシンの物理メモリに対するプロセスの常駐セットサイズのパーセンテージ。 (別名 pmem)。

args       COMMAND  文字列の引き数がついたコマンド。 引き数を変更したものが表示されるかも知れない。  このカ
                    ラムの出力には空白が含まれる場合がある。 <defunct> というマークがついたプロセスは、部分
                    的に死んでいて、  親プロセスによって完全に破壊されるのを待っている。 プロセスの引き数が
                    取得できない場合もある。  その場合、ps   は代わりに実行ファイル名を括弧の中に表示する。
                    (別名 cmd, command)。 comm フォーマットキーワード・ -f オプション・c オプションも参照す
                    ること。
                    最後に指定された場合、このカラムは画面の端まで拡張される。 出力がファイルや他のコマンド
                    にリダイレクト (パイプ) されるときなど、 ps がディスプレイの幅を決定できない場合は、 出
                    力幅は定義されない  (80 文字・制限なし・TERM 変数で決定されるなどがありえる)。 このよう
                    な場合は、COLUMNS 環境変数や --cols オプションを使えば、幅を正確に決定できる。 w または
                    -w オプションを使っても幅を調整できる。

blocked    BLOCKED  ブロックされたシグナルのマスク。signal(7) を参照。 フィールドの幅に応じて、32  ビットま
                    たは 64 ビットのマスクが 16 進数フォーマットで表示される。 (別名 sig_block, sigmask)。

bsdstart   START    コマンドが起動した時刻。  プロセスが 24 時間以内に起動されていた場合、 出力フォーマット
                    は " HH:MM" であり、 24 時間以前の場合は "mmm dd" である。 (ここで mmm  は月の名前の  3
                    文字である)。

bsdtime    TIME     ユーザーとシステムの cpu 時間の合計。 表示フォーマットは通常は "MMM:SS" であるが、 プロ
                    セスが cpu 時間を 999 分より多く使っている場合は、右側へシフトする。

c          C        プロセッサ使用率。 現在のところ、プロセスの生存期間中に利用したパーセンテージを表す整数
                    である。 (%cpu を参照)。

caught     CAUGHT   キャッチされたシグナルのマスク。 signal(7) を参照。 フィールドの幅に応じて、32 ビットま
                    たは 64 ビットのマスクが 16 進数フォーマットで表示される。 (別名 sig_catch, sigcatch)。

class      CLS      プロセスのスケジューリングのクラス。  (別名 policy, cls)。 フィールドに表示される可能性
                    のある値は、以下の通り:
                    -    報告されていない
                    TS   SCHED_OTHER
                    FF   SCHED_FIFO
                    RR   SCHED_RR
                    ?    不明な値

cls        CLS      プロセスのスケジューリングのクラス。 (別名 policy, class)。  フィールドに表示される可能
                    性のある値は、以下の通り:
                    -    報告されていない
                    TS   SCHED_OTHER
                    FF   SCHED_FIFO
                    RR   SCHED_RR
                    ?    不明な値

cmd        CMD      args を参照。(別名 args, command)。

comm       COMMAND  コマンド名 (実行ファイル名のみ)。 引き数を変更したものは表示されない。 <defunct> という
                    マークがついたプロセスは、部分的に死んでいて、   親プロセスによって完全に破壊されるのを
                    待っている。 このカラムの出力には空白が含まれる場合がある。  (別名 ucmd, ucomm)。  args
                    フォーマットキーワード・ -f オプション・c オプションも参照すること。
                    最後に指定された場合、このカラムは画面の端まで拡張される。 出力がファイルや他のコマンド
                    にリダイレクト (パイプ) されるときなど、 ps がディスプレイの幅を決定できない場合は、 出
                    力幅は定義されない  (80 文字・制限なし・TERM 変数で決定されるなどがありえる)。 このよう
                    な場合は、COLUMNS 環境変数や --cols オプションを使えば、幅を正確に決定できる。 w または
                    -w オプションを使っても幅を調整できる。

command    COMMAND  args を参照。(別名 args, cmd)。

cp         CP       パーミル (パーセントの 1/10) で表した CPU 使用率。(%cpu を参照)。

cputime    TIME     累積した CPU 時間。"[dd-]hh:mm:ss" というフォーマットで表示される。 (別名 time)。

egid       EGID     プロセスの実効グループ ID 番号を 10 進の整数で表示する。 (別名 gid)。

egroup     EGROUP   プロセスの実効グループ ID。 テキストのグループ ID  が取得できて、かつフィールド幅が許せ
                    ば、 テキストで表示される。 それ以外の場合は 10 進数で表示される。 (別名 group).

eip        EIP      命令ポインタ。

esp        ESP      スタックポインタ

etime      ELAPSED  プロセスが起動されてからの経過時間。 [[dd-]hh:]mm:ss というフォーマットで表示される。

euid       EUID     実効ユーザー ID。(別名 uid)。

euser      EUSER    実効ユーザー名。  テキストのユーザー ID が取得できて、かつフィールド幅が許せば、 テキス
                    トで表示される。 それ以外の場合は 10 進数で表示される。 n オプションを使って 10  進数表
                    示を強制できる。 (別名 uname, user)。

f          F        プロセスに関連づけられたフラグ。「プロセスフラグ」のセクションを参照。              (別
                    名 flag, flags)。

fgid       FGID     ファイルシステムアクセスグループ ID。(別名 fsgid)。

fgroup     FGROUP   ファイルシステムアクセスグループ ID。 テキストのグループ ID  が取得できて、かつフィール
                    ド幅が許せば、   テキストで表示される。   それ以外の場合は  10  進数で表示される。  (別
                    名 fsgroup).

flag       F        f を参照。(別名 f, flags)。

flags      F        f を参照。(別名 f, flag)。

fname      COMMAND  プロセスの実行ファイルのベース名の先頭 8 バイト。  このカラムの出力にはスペースが含まれ
                    る場合がある。

fuid       FUID     ファイルシステムアクセスユーザー ID。(別名 fsuid)。

fuser      FUSER    ファイルシステムアクセスユーザー ID。  テキストのユーザー ID が取得できて、かつフィール
                    ド幅が許せば、 テキストで表示される。 それ以外の場合は 10 進数で表示される。

gid        GID      egid を参照。(別名 egid)。

group      GROUP    egroup を参照。(別名 egroup)。

ignored    IGNORED  無視されたシグナルのマスク。signal(7) を参照。 フィールドの幅に応じて、32  ビットまたは
                    64 ビットのマスクが 16 進数フォーマットで表示される。 (別名 sig_ignore, sigignore)。

label      LABEL    セキュリティラベル。  最も一般的に使われるのは SE Linux のコンテキストデータである。 こ
                    れはセキュリティレベルの高いシステムにある 強制アクセス制御 (Mandatory Access  Control,
                    "MAC") のために存在する。

lstart     STARTED  コマンドが起動された時刻。

lwp        LWP      lwp  (軽量プロセス  (light  weight  process)  またはスレッド)  の ID が表示される。 (別
                    名 spid, tid)。

ni         NI       nice 値。 この値の範囲は 19 (最も良い) から -20 (他のプロセスに対して良くない) である。
                    nice(1) を参照。(別名 nice)。

nice       NI       ni を参照。(別名 ni)。

nlwp       NLWP     プロセスにおける lwp (スレッド) の数。(別名 thcount)。

nwchan     WCHAN    プロセスが休止しているカーネル関数のアドレス (カーネル関数名が必要な場合は wchan を使う
                    こと)。 実行中のタスクは、このカラムにダッシュ ('-') を表示する。

pcpu       %CPU     %cpu を参照。(別名 %cpu)。

pending    PENDING  待機中 (pending)  シグナルのマスク。signal(7)  を参照。  プロセスに待機しているシグナル
                    は、  各スレッドに待機しているシグナルと区別される。 両方を見たい場合は、m オプションま
                    たは -m オプションを使うこと。 フィールドの幅に応じて、32 ビットまたは 64  ビットのマス
                    クが 16 進数フォーマットで表示される。 (別名 sig)。

pgid       PGID     プロセスグループ  ID。  また、これはプロセスグループリーダのプロセス  ID と等しい。 (別
                    名 pgrp)。

pgrp       PGRP     pgid を参照。(別名 pgid)。

pid        PID      プロセスのプロセス ID 番号。

pmem       %MEM     %mem を参照。(別名 %mem)。

policy     POL      プロセスのスケジューリングのクラス。 (別名 class, cls)。 表示される可能性のある値は、以
                    下の通り:
                    -    報告されていない
                    TS   SCHED_OTHER
                    FF   SCHED_FIFO
                    RR   SCHED_RR
                    ?    不明な値

ppid       PPID     親プロセスのプロセス ID。

psr        PSR      プロセスが現在割り当てられているプロセッサ。

rgid       RGID     実グループ ID。

rgroup     RGROUP   実グループ名。 テキストのグループ ID が取得できて、かつフィールド幅が許せば、  テキスト
                    で表示される。 それ以外の場合は 10 進数で表示される。

rss        RSS      常駐セットの大きさ。 タスクが使用しているスワップされていない物理メモリ (kB 単位)。 (別
                    名 rssize, rsz)。

rssize     RSS      rss を参照。(別名 rss, rsz)。

rsz        RSZ      rss を参照。(別名 rss, rssize)。

rtprio     RTPRIO   リアルタイム優先度。

ruid       RUID     実ユーザー ID。

ruser      RUSER    実ユーザー ID。 テキストのユーザー ID が取得できて、かつフィールド幅が許せば、 テキスト
                    で表示される。 それ以外の場合は 10 進数で表示される。

s          S        最小限の状態表示 (1 文字)。 それぞれの値については、 「プロセスの状態コード」のセクショ
                    ンを参照すること。    その他の情報を表示させたい場合は、stat    も参照すること。    (別
                    名 state)。

sched      SCH      プロセスのスケジューリングのポリシー。 ポリシー sched_other, sched_fifo, sched_rr は そ
                    れぞれ 0, 1, 2 として表示される。

sess       SESS     セッション    ID。    また、これはセッションリーダのプロセス    ID    と等しい。    (別
                    名 session, sid)。

sgi_p      P        そのプロセスが現在実行されているプロセッサ。   プロセスが現在のところ実行中でない場合、
                    または実行可能でない場合、"*" が表示される。

sgid       SGID     保存グループ ID。 (別名 svgid)。

sgroup     SGROUP   保存グループ名。 テキストのグループ ID が取得できて、かつフィールド幅が許せば、  テキス
                    トで表示される。 それ以外の場合は 10 進数で表示される。

sid        SID      sess を参照。(別名 sess, session)。

sig        PENDING  pending を参照。(別名 pending, sig_pend)。

sigcatch   CAUGHT   caught を参照。(別名 caught, sig_catch)。

sigignore  IGNORED  ignored を参照。(別名 ignored, sig_ignore)。

sigmask    BLOCKED  blocked を参照。(別名 blocked, sig_block)。

size       SZ       プロセスの全ての書き込み可能なページがダーティ  (dirty) で、 スワップアウトされると仮定
                    したときの、 必要とされるスワップ空間の概算の大きさ。 この数値はとても大雑把である!

spid       SPID     lwp を参照。(別名 lwp, tid)。

stackp     STACKP   プロセスのスタックの最下位 (開始) アドレス。

start      STARTED  コマンドが起動した時刻。 プロセスが 24 時間以内に起動されていた場合、  出力フォーマット
                    は  " HH:MM:SS" であり、 24 時間以前の場合は "  mmm dd" である。 (ここで mmm は月の名前
                    の 3 文字である)。

start_time START    プロセスの起動時刻または起動日。 ps が起動されたのと同じ年に プロセスが起動されていない
                    場合は、年のみが表示される。 同じ日に起動されていない場合は "mmmdd" である。 それ以外は
                    "HH:MM" である。

stat       STAT     複数文字のプロセス状態。 それぞれの値の意味は、  「プロセスの状態コード」のセクションを
                    参照すること。 最初の文字のみを表示したい場合は、 s と state も参照すること。

state      S        s を参照。(別名 s)。

suid       SUID     保存ユーザー ID。(別名 svuid)。

suser      SUSER    保存ユーザー名。  テキストのユーザー ID が取得できて、かつフィールド幅が許せば、 テキス
                    トで表示される。 それ以外の場合は 10 進数で表示される。 (別名 svuser)。

svgid      SVGID    sgid を参照。(別名 sgid).

svuid      SVUID    suid を参照。(別名 suid)。

sz         SZ       プロセスのコアイメージの物理ページサイズ。 これにはテキスト・データ・スタック空間が含ま
                    れる。 デバイスマッピングは現在のところ除外されているが、これは変更される。 vsz と  rss
                    を参照。

thcount    THCNT    nlwp を参照。(別名 nlwp)。 プロセスが所有するカーネルスレッドの数。

tid        TID      lwp を参照。(別名 lwp)。

time       TIME     累積した CPU 時間。"[dd-]hh:mm:ss" フォーマットで表示される。 (別名 cputime)。

tname      TTY      制御端末 (tty)。 (別名 tt, tty)。

tpgid      TPGID    プロセスが接続されている端末  (tty) 上の フォアグラウンドプロセスグループの ID。 プロセ
                    スが端末に接続されていない場合は -1 である。

tt         TT       制御端末 (tty)。(別名 tname, tty)。

tty        TT       制御端末 (tty)。(別名 tname, tt)。

ucmd       CMD      comm を参照。(別名 comm, ucomm)。

ucomm      COMMAND  comm を参照。(別名 comm, ucmd)。

uid        UID      euid を参照。(別名 euid)。

uname      USER     euser を参照。(別名 euser, user)。

user       USER     euser を参照。(別名 euser, uname)。

vsize      VSZ      vsz を参照。(別名 vsz)。

vsz        VSZ      プロセスの仮想メモリサイズ (KiB, 1024 バイト単位)。  デバイスマッピングは現在のところ除
                    外されているが、これは変更される。 (別名 vsize)。

wchan      WCHAN    プロセスがスリープしているカーネル関数の名前。 プロセスが実行中の場合は "-" である。 プ
                    ロセスがマルチスレッドで、 かつ ps がスレッドを表示していない場合は、"*" である。

環境変数
以下の環境変数が ps に影響する:

COLUMNS
   デフォルトのディスプレイの幅を変更する。

LINES
   デフォルトのディスプレイの高さを変更する。

PS_PERSONALITY
   posix, old, linux, bsd, sun, digital のどれかに設定する。 (以下の「流儀\[u300D]のセクションを参照)。

CMD_ENV
   posix, old, linux, bsd, sun, digital のどれかに設定する。 (以下の「流儀\[u300D]のセクションを参照)。

I_WANT_A_BROKEN_PS
   obsolete なコマンドラインの解釈に強制する。

LC_TIME
   日付のフォーマット。

PS_COLORS
   現在のところサポートされていない。

PS_FORMAT
   デフォルトの出力フォーマットを上書きする。  -o オプションで使われるタイプを表す フォーマット文字列にこの
   値を設定できる。 DefSysV と DefBSD という値が特に役立つ。

PS_SYSMAP
   名前リスト (System.map) のデフォルトの場所。

PS_SYSTEM_MAP
   名前リスト (System.map) のデフォルトの場所。

POSIXLY_CORRECT
   良くない「仕様」を無視する際に言い訳をしない。

POSIX2
   "on" に設定されると、POSIXLY_CORRECT として振舞う。

UNIX95
   良くない「仕様」を無視する際に言い訳をしない。

_XPG
   CMD_ENV=irix の非標準的な振舞いをキャンセルする。

一般にはこれらの変数を設定するのはあまり良い考えではない。 唯一の例外は CMD_ENV または PS_PERSONALITY  であ
る。 これらは Linux を正常なシステムにする。 この設定を行わないと、ps は Unix98 標準における 役に立たない悪
い部分に従う。

流儀
390        S/390 OpenEdition の ps のように振舞う
aix        AIX の ps のように振舞う
bsd        FreeBSD の ps のように振舞う (全く標準的ではない)
compaq     Digital Unix の ps のように振舞う
debian     古い Debian の ps のように振舞う
digital    Tru64 (かつての Digital Unix または OSF/1) の ps のように振舞う
gnu        古い Debian の ps のように振舞う
hp         HP-UX の ps のように振舞う
hpux       HP-UX の ps のように振舞う
irix       Irix の ps のように振舞う
linux      ***** 推奨される *****
old        古い Linux の ps のように振舞う (全く標準的ではない)
os390      OS/390 Open Edition の ps のように振舞う
posix      標準
s390       OS/390 Open Edition の ps のように振舞う
sco        SCO の ps のように振舞う
sgi        Irix の ps のように振舞う
solaris2   Solaris 2+ (SunOS 5) の ps のように振舞う
sunos4     SunOS 4 (Solaris 1) の ps のように振舞う (全く標準的ではない)
svr4       標準
sysv       標準
tru64      Tru64 (かつての Digital Unix または OSF/1) の ps のように振舞う
unix       標準
unix95     標準
unix98     標準

関連項目
top(1), pgrep(1), pstree(1), proc(5).

準拠
この ps は以下に準拠する:

1   Version 2 of the Single Unix Specification
2   The Open Group Technical Standard Base Specifications, Issue 6
3   IEEE Std 1003.1, 2004 Edition
4   X/Open System Interfaces Extension [UP XSI]
5   ISO/IEC 9945:2003

著者
Branko  Lankester  <lankeste@fwi.uva.nl> が最初に ps を書いた。 Michael K. Johnson <johnsonm@redhat.com> は
proc   ファイルシステムに対応させるための大幅な書き換えを行った。    プロセス内のいくつかの項目を変更した。
Michael  Shields  <mjshield@nyx.cs.du.edu>  は  pid  リスト機能を追加した。  Charles Blake <cblake@bbn.com>
は、複数レベルのソート・ dirent 形式のライブラリ・デバイス名−番号間の mmap データベース・  直接  System.map
を二分木的に探索する手法、を追加し、  コードとドキュメントの大幅な整理を行った。  David  Mosberger-Tang  は
psupdate のジェネリックな BFD サポートを書いた。 Albert Cahalan <albert@users.sf.net>  は  ps  を書き直して
Unix98 と BSD への完全な対応を行った。 obsolete な文法や外来の文法に関するあまり美しくないハックも行った。

バグ報告は  <procps-feedback@lists.sf.net> まで送って欲しい。 (訳註: このメーリングリストの) 購読の必要もな
いし、奨めもしない。

Linux                                          July 28, 2004                                          PS(1)

$ sudo renice -3 1982
1982 (process ID) 従来の優先順位は 0 で, 新しい優先順位は -3 です

Linux のタスクを表示する。

$ top
top - 20:43:42 up  2:51,  1 user,  load average: 0.09, 0.06, 0.04
Tasks: 191 total,   1 running, 190 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.1 us,  0.3 sy,  0.0 ni, 99.3 id,  0.0 wa,  0.2 hi,  0.2 si,  0.0 st
MiB Mem :   5935.2 total,    217.2 free,   3157.0 used,   2561.0 buff/cache
MiB Swap:   8081.0 total,   8071.7 free,      9.3 used.   2540.8 avail Mem

   PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
  1341 qemu      20     3543676   1.1g  25060 S   3.3  19.2  20:34.06 qemu-system-x86
  1300 qemu      20     3008152 599292  24536 S   1.7   9.9  10:59.51 qemu-system-x86
  1398 qemu      20     2998624 605556  24728 S   1.0  10.0  12:39.87 qemu-system-x86
  1445 qemu      20     3032820 593308  24760 S   0.3   9.8   6:57.63 qemu-system-x86
  2573 root      20                           I   0.3         0:31.07 kworker/2:1-mm_percpu_wq
     1 root      20      105560  12216   7800 S         0.2   0:14.82 systemd
     2 root      20                           S               0:00.23 kthreadd
     3 root       0 -20                       I                       rcu_gp
     4 root       0 -20                       I                       rcu_par_gp
     6 root       0 -20                       I                       kworker/0:0H-kblockd
     8 root       0 -20                       I                       mm_percpu_wq
     9 root      20                           S               0:18.60 ksoftirqd/0
    10 root      20                           I               0:02.47 rcu_sched
    11 root      20                           I                       rcu_bh
    12 root      rt                           S               0:02.21 migration/0
    14 root      20                           S                       cpuhp/0
    15 root      20                           S                       cpuhp/1
    16 root      rt                           S               0:00.04 migration/1
    17 root      20                           S               0:03.27 ksoftirqd/1
    19 root       0 -20                       I                       kworker/1:0H-kblockd
    20 root      20                           S                       cpuhp/2

top コマンドでよく使うキーの説明

キー 説明
1 CPU使用率の表示切替
h ヘルプの表示(ESCキーで戻る)
c コマンド名/コマンドライン切替
z カラー/モノクロ切替
Shift + w 設定の保存
q top コマンドの終了
  • linux/commands/process.txt
  • 最終更新: 2024/03/31 05:49
  • by ともやん