[Linux][command] プロセス管理_表示_ps, pgrep, pstree, watch



# プロセスの監視
## psコマンド
~~~terminal:
$ ps [オプション]
~~~

| オプション | 由来 | 説明 |
|:--|:--|:--|
| default | process status | - 実行中のプロセスの情報を表示 |
| `a` | all | - すべてのプロセス（**端末に関連しないプロセスは含まない**）を表示 |
| `f` | forest | - プロセスを**ツリー状**に表示<br>- `pstree`と類似 |
| `u` | user format | - ユーザー名を含めて表示<br>- `top`と類似 |
| `x` | without controlling tty | - 端末に関連しないプロセスも表示 |
| `p PID`<br>`-p PID` | pid | - 指定した**PID**のプロセスを表示（複数指定も可能） |
| `l`<br>`-l` | long format | - 詳細な情報（UID, PPID, 時刻, **状態, nice値**など）を表示 |
| `ax` | a + x | - 制御端末の有無に関係なく、すべてのプロセスを表示 |
| `aux` | a + u + x | - すべてのプロセスを詳細表示（ユーザー名付き）<br>- `top`と類似 |
| `axf` | a + x + f | - すべてのプロセスを**インデント付き**で表示（ツリー状）<br>- `pstree`と類似 |
| `-e` | every | - すべてのプロセスを表示 |
| `-f` | full-format | - 詳細な情報（UID, PPID, 時刻など）を表示 |
| `-ef` | -e + -f | - すべてのプロセスを詳細フォーマットで表示（ただし**ツリー表示ではない**） |



## pgrepコマンド
~~~terminal
$ pgrep [オプション] [検索条件]
~~~

| オプション | 由来 | 説明 |
|:--|:--|:--|
| default | process grep | - 指定した名前のプロセスID（PID）を検索 |
| `-u` | user | - 指定した`実効(権限)`ユーザーが実行するプロセスID（PID）を検索<br>- rootユーザー: ユーザー名`root`, UID`0` |
| `-U` | user | - 指定した`実`ユーザーが実行するプロセスID（PID）を検索<br>- rootユーザー: ユーザー名`root`, UID`0` |
| `-g` | group | - 	指定した実行グループが実行するプロセスID（PID）を検索 |

## pstreeコマンド
~~~terminal:
$ pstree [オプション]
~~~

| オプション | 由来 | 説明 |
|:--|:--|:--|
| default | process tree | - プロセスをツリー状に表示 |



# コマンドの自動実行
## watchコマンド
~~~terminal:
$ watch [オプション] 指定コマンド
~~~

| オプション | 由来 | 説明 |
|:--|:--|:--|
| default | watch | - 指定コマンドを一定間隔で繰り返し実行し、出力をリアルタイムで更新 |
| `-n 秒数` | interval | - 更新間隔を秒単位で指定（デフォルトは2秒） |
| `-d` | difference | - 前回の出力と異なる部分をハイライト表示 |
| `-t` | no title | - 画面上部のヘッダー（更新間隔やコマンド名など）を非表示 |
| `-b` | beep | - 実行したコマンドが0以外の終了ステータスを返した場合にビープ音を鳴らす |
| `-p` | precise | - 指定した間隔で正確に更新を実施（処理時間の影響を考慮） |
| `-e` | exit | - 実行したコマンドが0以外の終了ステータスを返した場合にwatchを終了 |

# Ping-t
ps
- [3194_ps ax, ps -ef](https://mondai.ping-t.com/question_subjects/31/question_sessions/31223415/progressing_questions/478442913)
- [3287_ps l, ps -l]()
- [3288_ps p, ps -p](https://mondai.ping-t.com/question_subjects/31/question_sessions/31969785/progressing_questions/489837026)
- [3289_ps axf, pstree](https://mondai.ping-t.com/question_subjects/31/question_sessions/31069115/progressing_questions/476102910)
- [3338_ps -f](https://mondai.ping-t.com/question_subjects/31/question_sessions/30890995/progressing_questions/473266337)
- [3490_ps l, top](https://mondai.ping-t.com/question_subjects/31/question_sessions/32076138/progressing_questions/491415232)

pgrep
- [3610_pgrep](https://mondai.ping-t.com/question_subjects/31/question_sessions/31913990/progressing_questions/489024884)
- [3611_pgrep -u](https://mondai.ping-t.com/question_subjects/31/question_sessions/31869840/progressing_questions/488361804)
- [3682_ppgrep -U](https://mondai.ping-t.com/question_subjects/31/question_sessions/31913990/progressing_questions/489024882)
- [3683_pgrep -u](https://mondai.ping-t.com/question_subjects/31/question_sessions/32477286/progressing_questions/497681659)


watch
- [3360_watch](https://mondai.ping-t.com/question_subjects/31/question_sessions/31870469/progressing_questions/488372710)
- [3351_watch -n](https://mondai.ping-t.com/question_subjects/31/question_sessions/31943721/progressing_questions/489464089)