Bird
Raised Fist0
Linux CLIscripting~5 mins

fg and bg commands in Linux CLI - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does the fg command do in Linux?
The fg command brings a background job to the foreground, letting you interact with it directly.
Click to reveal answer
beginner
What is the purpose of the bg command?
The bg command resumes a stopped job in the background, allowing it to keep running without blocking the terminal.
Click to reveal answer
beginner
How do you list all current jobs in the shell?
Use the jobs command to see all running or stopped jobs with their job numbers.
Click to reveal answer
intermediate
How do you bring a specific job to the foreground using fg?
Use fg %job_number, for example fg %1 to bring job number 1 to the foreground.
Click to reveal answer
beginner
What happens if you press Ctrl+Z while a command is running?
Pressing Ctrl+Z stops (pauses) the running command and puts it in the background as a stopped job.
Click to reveal answer
Which command resumes a stopped job in the background?
Ajobs
Bfg
Ckill
Dbg
What does fg %2 do?
ALists job number 2
BStops job number 2
CBrings job number 2 to the foreground
DRuns job number 2 in the background
How do you see all current jobs in the shell?
Ajobs
Bps
Cfg
Dbg
What key combination stops a running job and puts it in the background?
ACtrl+Z
BCtrl+C
CCtrl+D
DCtrl+S
If you want to interact with a background job, which command should you use?
Ajobs
Bfg
Cbg
Dkill
Explain how to pause a running command and then resume it in the background.
Think about keyboard shortcuts and job control commands.
You got /3 concepts.
    Describe the difference between fg and bg commands.
    Consider how you want to use the job after resuming it.
    You got /4 concepts.

      Practice

      (1/5)
      1. What does the fg command do in a Linux shell?
      easy
      A. Brings a background job to the foreground for interaction
      B. Stops a running job immediately
      C. Lists all running jobs
      D. Terminates a background job

      Solution

      1. Step 1: Understand the purpose of fg

        The fg command is used to bring a job running in the background to the foreground so you can interact with it directly.
      2. Step 2: Compare with other commands

        jobs lists jobs, bg resumes jobs in background, and stopping or terminating jobs use other commands.
      3. Final Answer:

        Brings a background job to the foreground for interaction -> Option A
      4. Quick Check:

        fg = bring job to foreground [OK]
      Hint: Remember: fg = foreground, bg = background [OK]
      Common Mistakes:
      • Confusing fg with bg
      • Thinking fg lists jobs
      • Assuming fg stops jobs
      2. Which of the following is the correct syntax to resume a stopped job in the background?
      easy
      A. fg %1
      B. bg %1
      C. jobs %1
      D. stop %1

      Solution

      1. Step 1: Identify the command to resume a stopped job in background

        The bg command resumes a stopped job in the background, allowing the terminal to be free.
      2. Step 2: Understand job specification

        Using %1 specifies job number 1. So bg %1 resumes job 1 in background.
      3. Final Answer:

        bg %1 -> Option B
      4. Quick Check:

        bg %jobnumber resumes job in background [OK]
      Hint: Use bg with %jobnumber to resume in background [OK]
      Common Mistakes:
      • Using fg instead of bg to resume in background
      • Trying to use jobs command to resume
      • Using stop which is invalid
      3. Given the following commands run in a terminal:
      sleep 100 &
      jobs
      fg %1
      

      What will happen after running fg %1?
      medium
      A. The sleep command will continue running in the background
      B. An error will occur because %1 is invalid
      C. The sleep command will be terminated
      D. The sleep command will be brought to the foreground and block the terminal

      Solution

      1. Step 1: Analyze the commands

        sleep 100 & runs sleep in background. jobs lists it as job 1. fg %1 brings job 1 to foreground.
      2. Step 2: Understand effect of fg

        Bringing sleep to foreground means it blocks terminal until it finishes or is stopped.
      3. Final Answer:

        The sleep command will be brought to the foreground and block the terminal -> Option D
      4. Quick Check:

        fg %1 = foreground job blocks terminal [OK]
      Hint: fg brings job to foreground and blocks terminal [OK]
      Common Mistakes:
      • Thinking fg keeps job in background
      • Assuming fg terminates job
      • Believing %1 is invalid without jobs output
      4. You ran a command in the background with sleep 200 & but accidentally typed fg 1 instead of fg %1. What will happen?
      medium
      A. The job will be brought to foreground successfully
      B. The job will continue running in background silently
      C. An error message will appear: 'fg: 1: no such job'
      D. The shell will terminate

      Solution

      1. Step 1: Understand job specification syntax

        The fg command requires job IDs to be prefixed with %, e.g., fg %1.
      2. Step 2: Analyze incorrect command

        Typing fg 1 without % causes shell to look for a job named '1' which does not exist, causing an error.
      3. Final Answer:

        An error message will appear: 'fg: 1: no such job' -> Option C
      4. Quick Check:

        Job IDs need % prefix for fg/bg [OK]
      Hint: Always prefix job number with % in fg/bg commands [OK]
      Common Mistakes:
      • Omitting % before job number
      • Assuming fg accepts plain numbers
      • Ignoring error messages
      5. You have two stopped jobs listed by jobs as:
      [1]+  Stopped                 nano file1.txt
      [2]-  Stopped                 vim file2.txt

      How do you resume vim file2.txt in the background and then bring nano file1.txt to the foreground?
      hard
      A. bg %2 followed by fg %1
      B. fg %2 followed by bg %1
      C. bg %1 followed by fg %2
      D. fg %1 followed by fg %2

      Solution

      1. Step 1: Resume vim in background

        Use bg %2 to resume job 2 (vim) in background so it runs without blocking terminal.
      2. Step 2: Bring nano to foreground

        Use fg %1 to bring job 1 (nano) to foreground for interaction.
      3. Final Answer:

        bg %2 followed by fg %1 -> Option A
      4. Quick Check:

        bg %job runs in background, fg %job runs in foreground [OK]
      Hint: Use bg for background, fg for foreground with correct job IDs [OK]
      Common Mistakes:
      • Mixing up job numbers
      • Using fg for both jobs
      • Not using % before job number
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard