フォアグラウンド、バックグラウンドジョブ

シェルはユーザーが実行したコマンドを、ジョブという単位で管理している

フォアグラウンドジョブとはなんぞ

  • 終了させるまで、次のコマンドが実行できないジョブのこと
  • 通常、シェル上でコマンドを実行すればそのコマンドはフォアグラウンドジョブとして実行される

vim とかそんな感じだなーとの感想。

バックグラウンドジョブとはなんぞ

  • コマンド名の後ろに「&」を付けて実行してみる
[riceplanting@localhost ~]$ vim &
[1] 2623
[riceplanting@localhost ~]$ jobs
[1]+  停止                  vim
  • 背面で実行されているイメージだから、バックグラウンドジョブ
バックグラウンドジョブとして実行すれば、複数のコマンドを同時に実行できるようになる

ジョブの切り替え

  • 一時停止
Ctrl + Z
  • ジョブの確認
jobs
  • ジョブをバックグラウンドジョブとして再開
bg
  • ジョブをフォアグラウンドジョブとして再開
fg
  • ジョブが複数ある場合、引数に[ジョブ番号]を指定する
fg 2
  • バックグラウンドで実行中のジョブを、フォアグラウンドで再開
fg %2
  • バックグラウンドジョブの終了(引数に[ジョブ番号]を指定)
kill %2