jobs / fg / bg の使い方
後ろで動かしているジョブ
書き方
コマンド &(後ろで動かす) jobs [-l] fg [%番号] bg [%番号] kill %番号
末尾に & を付けると、終わるのを待たずにプロンプトに戻ります。jobs で一覧(-l で PID も)、fg で前に戻す、bg で止まっているジョブを後ろで動かし直す、kill %1 で 1 番のジョブを止めます。このシミュレーターでは、fg で前に戻したジョブはそこで終わったことにします。
よく使うオプション
| オプション | 意味 |
|---|---|
コマンド & | 後ろで動かす |
jobs -l | ジョブの一覧を PID と一緒に出す |
fg %番号 | そのジョブを前に戻す |
bg %番号 | 止めたジョブを後ろで動かし直す |
Ctrl+Z | 前で動いているものを一時停止する |
kill %番号 | そのジョブを止める |
例
$ tar czf big.tar.gz /data &[1] 3402時間のかかる処理を後ろで動かし、そのあいだも別のコマンドを打てるようにします。
$ jobs -l[1]+ 3402 Running tar czf big.tar.gz /data &後ろで動いているジョブの番号・PID・状態を見ます。
$ fg %1
1 番のジョブを前に戻し、終わるまで待ちます。
$ bg %1
Ctrl+Z で一時停止したジョブを、後ろで動かし直します。
よくある間違い・注意
- & で後ろに回しても、ログアウトすると止まることがあります。続けたいときは nohup を使います。
- ジョブの番号(%1)はそのシェルの中だけのものです。ほかの端末では使えないので、PID で扱います。
実際に打って練習する
Linux レベル1 コースの Lv81「仲間を働かせる jobs」で覚えます(第5章 見張りの塔(環境・ジョブ・ログ・時刻))。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。
Lv1〜16 は、登録不要・無料で遊べます(それより先はブロンズ以上のプランで遊べます)。