fg エフジー

英語表記fg

日本語表記フォアグラウンド復帰

正式名称fg

危険度安全

What does it mean?

ジョブを前面へ戻して再開するシェル組み込みです。Ctrl+Zや&と組み合わせると、対話シェル上で処理の前後関係を切り替えられます。

Command Quest

fg を今日の道具にする

ジョブを前面へ戻して再開するシェル組み込みです。Ctrl+Z...

$ fg [ジョブ指定]
関連用語0
次のコマンド0
FAQ2
参照4

概要

ジョブを前面へ戻して再開するシェル組み込みです。Ctrl+Zや&と組み合わせると、対話シェル上で処理の前後関係を切り替えられます。

基本構文

fg [ジョブ指定]

詳細解説

fgは、シェルのジョブ制御機能を扱うための組み込みコマンドです。ジョブとは、現在のシェルから起動され、シェルが前面、背面、停止状態として追跡している処理単位を指します。

fgは外部コマンドではなく、現在のシェル自身が管理しているジョブへ作用する点が重要です。そのため、別シェルや非対話シェルでは期待どおりに使えないことがあります。

実務では、対話的な確認作業の途中で一時停止して別作業を行う、長い処理を裏へ回して端末を取り戻す、といった場面で役立ちます。ただし、永続的なサービス運用の代わりになるものではありません。

このコマンドを使う場面

停止したジョブや背景処理を対話的に扱いたい時に使います。

まず安全に試す方法

1. sleep 300
2. Ctrl+Zを押す
3. jobs -l
4. fg %1
5. Ctrl+Cで終了する

3分ミッション

少しでも手を動かすと定着しやすくなります。終わった項目にチェックを入れてください。

  1. sleepを実行し、停止、再開、一覧確認の流れを体験します。

資格試験との関連

  • LinuC レベル1
    範囲: 1.03.1 コマンドラインの操作
    根拠: official
    LinuCレベル1では、ジョブ制御やシェル上の対話操作がコマンドライン運用の基礎として重視されます。
  • LPIC-1
    範囲: 103.1 Work on the command line
    根拠: official
    LPIC-1では、シェル上での対話操作、ジョブ制御、実行環境の扱いが重要です。
  • 共通基礎
    範囲: Linuxコマンド基礎
    根拠: editorial
    試験横断で、fgはLinux運用の基礎体力を支える重要なコマンドです。

オプション

  • ジョブ指定 %番号
    対象ジョブを指定します。
    fg %1

実行結果サンプル

  • sleep 300 # Ctrl+Z jobs -l fg %1
    [1]+ Stopped         sleep 300
    sleep 300

戻り値コード

  • 0 正常終了。ジョブ操作または一覧表示に成功しました。
  • >0 ジョブ制御無効、対象ジョブ不存在などで処理できませんでした。

使用例

  • fg
  • fg %1

よくあるエラー

  • fg: no job controlと表示された
    原因: 非対話シェルなどでジョブ制御が無効です。
    対処: 対話シェルで試し、ジョブ制御が有効か確認します。
  • fgしたら端末操作が戻らない
    原因: 対象ジョブが前面へ戻ったため、その処理が終了するまで端末が占有されます。
    対処: 必要ならCtrl+Zで再停止し、bgで背景再開するか、Ctrl+Cで終了します。

導入・互換性情報

ジョブ制御が有効な対話シェルでだけ意味を持ちます。非対話シェルやジョブ制御無効環境では期待どおりに使えません。

注意点 / セキュリティリスク

危険度は低いですが、ジョブ指定を取り違えると意図しない処理を前面や背面へ動かします。まずjobsで状態を確認してから操作すると安全です。

FAQ

  • Q. fgすると何が起きますか。
    A. 対象ジョブが前面へ戻り、その処理が端末を占有します。完了または停止するまで次の入力はその処理へ向かいます。
  • Q. systemdサービスの代わりになりますか。
    A. なりません。ジョブ制御は現在のシェル内だけの対話機能です。

参照リンク

関連記事