Linuxのジョブ管理 のバックアップソース(No.1)

#author("2020-11-28T23:31:19+09:00","default:k1rou","k1rou")
*Linuxのジョブ管理 [#tf7acb4f]
-[[Linuxコマンド]]

**ジョブの種類 [#v874cc56]
-フォアグラウンドジョブ
-バックグラウンドジョブ

**ジョブの実行 [#i11123a6]
-フォアグラウンド
 <command>

-バックグラウンド ※コマンド末尾に"&"
 <command> &

-ハングアップモード ※実行したジョブをログアウト後も(プロセスとして)実行し続ける
 nohup <command> &

**実行したジョブの操作 [#r64dc5e4]
***フォアグラウンドジョブの操作 [#o712ec01]
-強制終了
--Ctrl + C

-一時停止
--Ctrl + Z

***bg [#p497e1a1]
-バックグラウンドで実行
--一時停止したジョブをバックグラウンドで再開
 bg ※カレントジョブを実行
 bg <job-number> ※指定したジョブ番号を実行

***fg [#c168db49]
-フォアグラウンドで実行
--バックグラウンドで実行中のジョブをフォアグラウンドにする
--一時停止したジョブをフォアグラウンドで再開
 fg ※カレントジョブを実行
 fg <job-number> ※指定したジョブ番号のジョブを実行

***nohup [#k1c7d4d9]
-ハングアップモードで実行したジョブの操作
--指定したプロセスをHUPシグナルを無視するように設定する
 nohup -p <pid>
 nohup -pF <pid> ※強制的に設定

**ジョブの確認 [#e9cd36db]
***jobs [#b04f8667]
-動作中のジョブを一覧表示
--jobs <option>
 jobs
 jobs -l ※PIDを表示

-指定したジョブを表示
--jobs <option> %<job-no>
 jobs %% ※カレントジョブ
 jobs %+ ※カレントジョブ
 jobs %- ※直前に実行されたジョブ
 jobs %<job-no> ※指定したジョブ番号のジョブ
 
-表示内容
--ジョブ番号 ※[n]で表示される
--カレントジョブ"+"、直前に実行されたジョブ"-"
--ジョブの状態
| Running | 実行中(バックグラウンド) |
| Stopped | 一時停止中 |
| Terminated | 強制終了 |
| Done | 正常終了 |
| Exit | 異常終了 |

**ジョブの終了 [#e378e51c]
***kill [#b0061ec7]
 kill %<job-no> ※終了
 kill -KILL %<job-no> ※強制終了

**補足 [#se317c11]
-HUPシグナル
--ログアウトや端末終了時にOSが発行するシグナル
--通常、HUPシグナルを受け取ったジョブは終了する。
--nohupコマンドで実行したジョブは、HUPシグナルを受け取っても終了しない。

**参照 [#t0074d7a]
-[[Linuxのプロセス管理]]