No.077プロセスとジョブ
jobs
ジョブズ・ジョブ一覧表示
現在のシェルが把握しているジョブを一覧表示するシェル組み込みです。Ctrl+Zや&と組み合わせると、対話シェル上で処理の前後関係を切り替えられます。
答えよく使う形
$ sleep 300 &
sleep 400 &
jobs -l
[1]- 12345 Running sleep 300 & [2]+ 12346 Running sleep 400 &
$ jobs
$ jobs -l
練習用の部屋です。何を打っても本物は変わりません。本物の Linux で続ける →
覚える順番の中でLPIC-1・52 駅め / 106
どんなコマンド?
現在のシェルが管理している背景ジョブや停止中ジョブの状態を確認したい時に使います。
jobsは、シェルのジョブ制御機能を扱うための組み込みコマンドです。ジョブとは、現在のシェルから起動され、シェルが前面、背面、停止状態として追跡している処理単位を指します。
jobsは外部コマンドではなく、現在のシェル自身が管理しているジョブへ作用する点が重要です。そのため、別シェルや非対話シェルでは期待どおりに使えないことがあります。
実務では、対話的な確認作業の途中で一時停止して別作業を行う、長い処理を裏へ回して端末を取り戻す、といった場面で役立ちます。ただし、永続的なサービス運用の代わりになるものではありません。
書き方とオプション
組み立ててみるオプションを押すと、下の1行に足されます。もう一度押すと外れます。
$ jobs
使用例と実行結果
行を押すとコピーできます。
[1]- 12345 Running sleep 300 & [2]+ 12346 Running sleep 400 &
まず安全に試す
3分ミッション
手を動かすと覚えやすくなります。できたものに印を付けてください(この端末に残ります)。
0 / 1
つまずいたとき
jobsを実行しても何も出ない
原因現在のシェルが管理するジョブが存在しません。
こうするバックグラウンド起動や停止操作を行った後で再確認します。
別端末で起動した処理が出てこない
原因jobsは現在のシェルが管理するジョブだけを表示します。
こうするシステム全体の確認にはpsやpgrepを使います。
終わったときの数(戻り値)
$ echo $?
- 0正常終了。ジョブ操作または一覧表示に成功しました。
- >0ジョブ制御無効、対象ジョブ不存在などで処理できませんでした。
気をつけることと入れ方
危険度は低いですが、ジョブ指定を取り違えると意図しない処理を前面や背面へ動かします。まずjobsで状態を確認してから操作すると安全です。
シェル(bash など)に組み込まれたコマンドです。入れるものはありません。
環境による違い
ジョブ制御が有効な対話シェルでだけ意味を持ちます。非対話シェルやジョブ制御無効環境では期待どおりに使えません。
確かめた環境2026-04-09 に確認
よくある質問
psとの違いは何ですか。
psはシステム全体のプロセスを表示し、jobsは現在のシェルが管理するジョブだけを表示します。
別端末で起動した処理も扱えますか。
通常は扱えません。現在のシェルが管理しているジョブだけが対象です。
資格試験では
- LinuC レベル1大事1.03.1 コマンドラインの操作LinuCレベル1では、ジョブ制御やシェル上の対話操作がコマンドライン運用の基礎として重視されます。
- LPIC-1大事103.1 Work on the command lineLPIC-1では、シェル上での対話操作、ジョブ制御、実行環境の扱いが重要です。
- 共通基礎大事Linuxコマンド基礎
jobs を最後まで読みました。
Linux コマンド辞典に戻る46 / 144