記録: 320
シナリオ: CentOS 7.9 オペレーティング システムでは、ps コマンドはプロセス情報を表示するツールです。プロセスステータス、プロセスメモリ使用量、プロセスCPU使用量、プロセスPIDなどを表示します。
バージョン:
オペレーティングシステム: CentOS 7.9
1. psコマンドの概要
ps コマンド。プロセス ステータスの略です。プロセス情報を表示するためのツール。開始されたプロセス、プロセスの実行ステータス、プロセスが占有しているリソースを表示できます。この情報を収集すると、プロセスの監視と制御に役立ちます。たとえば、自動化スクリプトを作成する場合、プロセス情報に基づいて次のステップが決定されます。
ps コマンドは、プロセス実行時にプロセス情報ツールを表示するために使用されます。プロセスステータス、プロセスメモリ使用量、プロセスCPU使用量、プロセスPIDなどを表示します。
top コマンドは、プロセスのリアルタイムの動的な情報を表示するツールです。プロセスステータス、プロセスメモリ使用量、プロセスCPU使用量、プロセスPIDなどを表示します。
ゾンビ プロセス。プロセスは fork を使用して子プロセスを作成します。子プロセスが終了し、親プロセスが wait または waitpid を呼び出して子プロセスの状態情報を取得しない場合でも、子プロセスのプロセス記述子は依然としてシステム。このようなプロセスをゾンビプロセスと呼びます。
2.ps共通コマンド
(1) ps helpコマンド
コマンド: ps --help a
機能: ps でサポートされているすべてのコマンドとオプションを表示します。実際の作業では、このマニュアルの閲覧は必須です。
(2) 現在のセッションで開いているプロセスを表示する
コマンド: ps
機能: 現在のセッションによって開かれたプロセス (実際には ps プロセスと bash プロセス) を表示します。psはbashを使ったシェルスクリプトなのでbashプロセスも存在します。
(3) すべてのプロセスを表示する
コマンド: ps -e
コマンド: ps -A
機能: -e、-A、すべてのプロセスを表示します。印刷フィールド: PID、TTY、TIME、CMD 情報。通常は -e を使用します。
(4) コマンドラインを含むすべてのプロセスと完全なフォーマットを表示します。
コマンド: ps -ef
機能: -f コマンドラインを含む完全な形式。印刷フィールド: UID、PID、PPID、C、STIME、TTY、TIME、CMD。
(5) 全プロセスの表示と指定したコンテンツの検索
コマンド: ps -ef | grep java
機能: ps -ef でリストした内容から、一般的に組み合わせて使用されるキーワード java を含むプロセスを grep コマンドで検索します。検索を使用した後、フィールド名は表示されないことに注意してください。
(6) すべてのプロセスを表示して完全な情報を表示します
コマンド: ps -eF
機能: -F、完全な情報を表示、フィールドを印刷: UID、PID、PPID、C、SZ、RSS、PSR、STIME、TTY、TIME、CMD。プロセスのメモリと CPU 使用率を表示したい場合は、このコマンドを使用できます。
(7) ユーザー次元の情報を出力する全プロセスを表示
コマンド: ps aux
機能: a、tty 端末によって開始されたすべてのプロセスを出力します。x、tty 制御端末を持たない印刷プロセス。u、ユーザー指向の形式で出力します。印刷フィールド: USER、PID、%CPU、%MEM、VSZ、RSS、TTY、STAT、STATT、TIME、COMMAND。ユーザーのプロセスの CPU、メモリ、プロセスのステータスを表示する必要がある場合は、この方法を使用できます。
(8) 検索を指定してユーザー次元に情報を出力するすべてのプロセスを表示します
コマンド: ps aux | grep java
機能: すべてのプロセスとユーザー ディメンションの出力情報を表示し、指定したキーワードを検索します。
3. psコマンドフィールドの解析
ps コマンドを実行すると、出力される情報の 1 行目はフィールド名、つまり各列の意味です。
3.1 共通フィールド
UID: プロセスのユーザーの ID 番号。
USER: プロセスを開始したユーザー。
PID: プロセスの一意の ID。
PPID: プロセスの親プロセスの ID 番号。
C: プロセス CPU プロセッサ使用率。
TTY: プロセスを開始した端末の名前。プロセスがどの端末で実行されているかを示します。特定の端末から開始されないプロセス、または端末に関係のないプロセスは ? として表示されます。端末名を表示するには、ll /dev/ を使用します。
TIME: プロセスが CPU を使用した累積時間。
CMD/COMMAND: プロセスによって実行されるコマンド。
STIME/STATT: プロセスの開始時刻。
%CPU: プロセスが占有している CPU の割合
%MEM: プロセスによって占有されているメモリの割合 (物理メモリを使用して計算)。
VSZ:プロセスが占有する仮想メモリのサイズ(単位:KB)
RSS:プロセスが占有している実際のメモリサイズ(単位:KB)
PSR: 現在のプロセスがスケジュールされている CPU コアのシリアル番号。
SZ: 物理ページ内のプロセスのコア イメージのサイズ。
STAT: プロセスの現在の状態。
3.2 フィールド STAT の説明
STAT: プロセスの現在の状態。STAT フィールドの各文字は意味を表します。
R: 実行中、実行中、または実行可能な状態。
S: 中断可能なスリープ。スリープ状態のプロセスを中断 (イベントの完了を待機) できます。
D: 中断不可能なスリープ、中断不可能なスリープ プロセス。
T: 停止した、停止または追跡されたプロセス。
Z: ゾンビ、ゾンビプロセス。
s: セッション リーダー、セッション層の状態。
N:優先度の低いプロセスです。
<: 優先度の高い処理です。
+: フォアグラウンドプロセス。
l: マルチスレッドプロセス。(文字l)。
3.ps およびその他のいくつかのコマンド
プロセスの表示: ps -ef
CPU 情報の表示: cat /proc/cpuinfo
内部情報を表示: free -h
ファイル システム情報を表示します: df -h
ディレクトリとファイルスペースの情報を表示します: du -h
ディスクマウント情報の表示: lsblk
4. ヘルプコマンド一覧
コマンド: ps --help a
ps でサポートされているすべてのコマンドとオプションを表示します。実際の作業では、このマニュアルの閲覧は必須です。
Usage:
ps [options]
Basic options:
-A, -e all processes
-a all with tty, except session leaders
a all with tty, including other users
-d all except session leaders
-N, --deselect negate selection
r only running processes
T all processes on this terminal
x processes without controlling ttys
Selection by list:
-C <command> command name
-G, --Group <GID> real group id or name
-g, --group <group> session or effective group name
-p, p, --pid <PID> process id
--ppid <PID> parent process id
-q, q, --quick-pid <PID>
process id (quick mode)
-s, --sid <session> session id
-t, t, --tty <tty> terminal
-u, U, --user <UID> effective user id or name
-U, --User <UID> real user id or name
The selection options take as their argument either:
a comma-separated list e.g. '-u root,nobody' or
a blank-separated list e.g. '-p 123 4567'
Output formats:
-F extra full
-f full-format, including command lines
f, --forest ascii art process tree
-H show process hierarchy
-j jobs format
j BSD job control format
-l long format
l BSD long format
-M, Z add security data (for SELinux)
-O <format> preloaded with default columns
O <format> as -O, with BSD personality
-o, o, --format <format>
user-defined format
s signal format
u user-oriented format
v virtual memory format
X register format
-y do not show flags, show rss vs. addr (used with -l)
--context display security context (for SELinux)
--headers repeat header lines, one per page
--no-headers do not print header at all
--cols, --columns, --width <num>
set screen width
--rows, --lines <num>
set screen height
Show threads:
H as if they were processes
-L possibly with LWP and NLWP columns
-m, m after processes
-T possibly with SPID column
Miscellaneous options:
-c show scheduling class with -l option
c show true command name
e show the environment after command
k, --sort specify sort order as: [+|-]key[,[+|-]key[,...]]
L show format specifiers
n display numeric uid and wchan
S, --cumulative include some dead child process data
-y do not show flags, show rss (only with -l)
-V, V, --version display version information and exit
-w, w unlimited output width
--help <simple|list|output|threads|misc|all>
display help and exit
以上、ありがとうございます。
2022 年 11 月 18 日