103.5基礎
TASK_PIDに終了対象のプロセスIDが入っている。
即時強制終了ではなく、後処理を行えるSIGTERMを送る。
適切なコマンドはどれか。
× 不正解
SIGTERMはプロセスへ正常終了の機会を与える一般的な終了要求である。応答しない場合にのみSIGKILLを検討する。
詳細解説
誤り
kill -STOP "$TASK_PID"プロセスを停止状態にするが終了を要求しない。
停止するだけである。
誤り
kill -CONT "$TASK_PID"停止中プロセスの実行再開を指示する。
再開するシグナルである。
誤り
kill -KILL "$TASK_PID"捕捉や後処理ができない強制終了で、最初の選択として強すぎる。
後処理不能の強制終了である。
正しい
kill -TERM "$TASK_PID"指定PIDへ通常の終了要求であるSIGTERMを送る。
正解。指定PIDへ通常終了を要求する。
実際に確かめる
一時的な検証環境で実行できる例です。
sleep 1 & TASK_PID=$!; kill -TERM "$TASK_PID"; wait "$TASK_PID" 2>/dev/null || true期待される結果
出力なし。sleepはSIGTERMで終了する理解のポイント
- killはPIDへシグナル送信
- TERMは通常の終了要求
- KILLは後処理不能
確認時の注意
- 確認環境: Bash 5.2 / procps-ng
基礎のおさらい
killの役割
名前に反してkillは終了専用ではなく、指定PIDへ任意のシグナルを送る。
後処理
TERMを処理するプロセスは接続終了や一時ファイル削除などを行ってから終了できる。
問題IDKP-103-089
確認環境Bash 5.2 / procps-ng
最終技術確認2026-08-12
誤り・権利侵害を報告