Difference between revisions of "Bg, fg and jobs"
imported>ThorstenStaerk |
imported>ThorstenStaerk |
||
Line 11: | Line 11: | ||
[[File:Snapshot-bg-xclock.png]] | [[File:Snapshot-bg-xclock.png]] | ||
+ | |||
+ | In this case you can continue to call further [[commands]] on the console. | ||
+ | |||
+ | = Hints = | ||
+ | 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 | ||
+ | ^Z | ||
+ | [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 & | ||
+ | Now it will be as if you had called the command with the & behind it. |
Revision as of 10:08, 16 December 2011
bg, fg and jobs are process related commands that belong together. bg stands for background and fg stands for foreground.
Concept
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
xclock
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.
Hints
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 ^Z [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 &
Now it will be as if you had called the command with the & behind it.