Bg, fg and jobs

From Linuxintro

bg, fg and jobs are process related commands that belong together. bg stands for background and fg stands for foreground.


When you start a program under Linux, by default the command runs in the foreground. This means the console is reserved for in- and output to and from this program. You do not get a prompt while the program is running. Here is an example for this showing the program xclock being called by the command



This program runs in the foreground, the console is reserved for its in- and output. To run the same program in the background, start it with the ampersand ("&") after the program name:

xclock &


In this case you can continue to call further commands on the console.


Maybe you have started a program without the & behind it, and now you want to use console to issue further commands. In this case stop the program using CTRL_Z:

tweedleburg:~ # xclock
[1]+  Stopped                 xclock

List it using the command jobs

tweedleburg:~ # jobs
[1]+  Stopped                 xclock

And send it to the background using the command bg

tweedleburg:~ # bg
[1]+ xclock &
tweedleburg:~ #

Now it will be as if you had called the command with the & behind it. You will be able to use console for issueing further commands.

See also