Linuxのバックグラウンド実行とは?「& / jobs / fg / bg」をやさしく解説




はじめに

Linuxを使っていると、こんな経験ありませんか?

  • コマンド実行したら終わらなくて、ターミナルが固まった

  • 「この処理、裏で動かしながら別の作業したい」

  • Ctrl + Z 押したけど、その後どうすればいいか分からない

そんなときに使うのが、

  • &

  • jobs

  • fg

  • bg

いわゆる バックグラウンド実行 周りのコマンドです。

正直、
地味だけど覚えてない人が多い 分野。

この記事では、

  • バックグラウンド実行とは何か

  • & の意味

  • jobs は何を見ているのか

  • 実務での使いどころ

を、初心者向けに整理します。


バックグラウンド実行とは?

まず考え方から。

通常、Linuxでコマンドを実行すると、

sleep 60

この60秒間、
ターミナルはそのコマンドに占有されます

これを フォアグラウンド実行 と呼びます。

一方、

ターミナルを占有せず、裏でコマンドを動かす

これが バックグラウンド実行 です。


& の意味とは?

バックグラウンド実行で一番よく使うのが &

sleep 60 &

これを実行すると、

  • コマンドは裏で動き続ける

  • ターミナルはすぐ操作可能になる

という状態になります。

& がやっていること

& は一言で言うと、

このコマンドをバックグラウンドで実行する

という指示。

特別なコマンドではなく、
シェルへの命令 です。


バックグラウンド実行すると何が起きる?

sleep 60 &

を実行すると、こんな表示が出ます。

[1] 12345

これは、

  • [1] → ジョブ番号

  • 12345 → プロセスID(PID)

を意味しています。

👉
ここでいう「ジョブ」が重要 になります。


jobsコマンドとは?

jobs

これは何を見ているコマンドなのか。

答えはこれ。

今のシェルで管理している「ジョブ一覧」を表示する

jobsが見ているもの

  • バックグラウンド実行したコマンド

  • Ctrl + Z で停止したコマンド

👉
システム全体のプロセスではない
という点が重要。

ps とは別物)


jobsの表示例

jobs
[1]+  Running  sleep 60 &
  • [1]:ジョブ番号

  • Running:実行中

  • sleep 60 &:実行したコマンド


Ctrl + Z は「終了」ではない

long_command

実行中に

Ctrl + Z

を押すと、

  • コマンドは 停止(中断)

  • 終了はしていない

状態になります。

この状態のジョブも jobs で確認できます。


fgとは何をするコマンド?

fg

これは、

バックグラウンド or 停止中のジョブを、再びフォアグラウンドに戻す

コマンド。

fg %1
  • %1 → ジョブ番号1番

これで、そのジョブが再びターミナルを占有します。


bgとは何をするコマンド?

bg

これは、

停止中のジョブを、バックグラウンドで再開する

コマンドです。

bg %1
  • Ctrl + Z で止めたジョブを

  • 裏で再開する

という動き。


fg / bg / jobs の関係まとめ

操作 意味
& 最初からバックグラウンド実行
Ctrl + Z 一時停止
jobs ジョブ一覧を見る
fg フォアグラウンドに戻す
bg バックグラウンドで再開

実務での使いどころ

① 処理が長いコマンドを裏で回したい

npm run build &
  • ビルドを裏で回しつつ

  • 別の確認作業をしたい時


② 間違えて重いコマンドを実行した時

Ctrl + Z
bg
  • うっかり実行した処理を

  • 裏に回してターミナルを解放


③ ログ監視を一時的に止めたい

tail -f access.log
Ctrl + Z
  • 状況確認後に fg で復帰


なぜこの分野が覚えづらいのか

理由はシンプルで、

  • 使う頻度がそこまで高くない

  • プロセスとジョブの違いが分かりづらい

  • 暗記するとすぐ忘れる

でも一度、

「ジョブ=今のシェルが管理している作業」

と理解すると、一気に整理できます。


まとめ

  • バックグラウンド実行は「裏で処理を動かす」仕組み

  • & は最初から裏で実行する指示

  • jobs はシェルが管理しているジョブ一覧を見る

  • fg は前面に戻す

  • bg は裏で再開する

  • 実務でも地味に出番が多い

覚えていなくても困らないけど、
知っていると作業効率が確実に上がる

そんなポジションの記事です。

コメント

タイトルとURLをコピーしました