適当に使ってたCtrl + z とCtrl + cが何をしているのか整理してみる試み
TL;DR (簡潔に説明)
Ctrl + z
実行中のコマンドの一時停止
Ctrl + c
実行中のコマンドの終了
めっちゃ分かりやすいサイト
説明に誤りとかあったら教えて欲しいです。
Rails serverで挙動を確認
rails sでサーバーが起動しています
Ctrl + zでjobs番号1で実行されていたrails s コマンドがsuspended(停止の過去形)しているのが確認できます。jobs番号の後の+
はカレントジョブ(直前に操作のあったjob)を表してるらしいです。
停止中のjobなので以下のようにfgコマンドでフォアグラウンドに戻す事ができます。
今度はCtrl + cを押してみると
=== puma shutdown: 2023-04-24 06:54:04 +0900 === - Goodbye! Exiting
上記の文字が出力されています、文字から何かがstopしてfinishするためのrequestsをwaitingしてるらしいです。そしてpumaなるものがshutdownしたらしいです。
Goodbye! 唐突にお別れの挨拶を言われ、Exiting(退出中)してるらしいです。もうこの実行されていたコマンド君(一連のプロセス)は僕たちの元(フォアグラウンド、terminalで見れるところ)に帰ってこない可能性が高いです。
jobs
コマンドを実行しても何も出力されません。
もう一度まとめると、
Ctrl + z
実行中のコマンドの一時停止
Ctrl + c
実行中のコマンドの終了
最後に見ておいてほしい画像、以下のサイトの一番下のジョブ制御という画像でイメージを掴んでおくと納得かもしれないです。