How do I run a Unix process in the background?
In Unix, a background process executes independently of the
shell, leaving the terminal free for other work. To run a
process in the background, include an
(an ampersand) at the end of the command you use to run the
job. Following are some examples:
- To run the
countprogram, which will display the process identification number of the job, enter: count &
- To check the status of your job, enter: ps
- To bring a background process to the foreground, enter: fg
- If you have more than one job suspended in the background, enter:
#with the job number, as shown in the first column of the output of the
- You can kill a background process by entering:
Replacekill -KILL PID
PIDwith the process ID of the job. If that fails, enter the following:
- To determine a job's PID, enter: jobs -l
- If you are using
zsh, you may prevent background processes from sending error messages to the terminal. Redirect the output to
/dev/nullusing the following syntax: count 2> /dev/null &
At Indiana University, for personal or departmental Linux or Unix systems support, see At IU, how do I get support for Linux or Unix?
Last modified on September 23, 2008.