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:
jobs
- To bring a background process to the foreground, enter:
fg
- If you have more than one job suspended in the background, enter:
fg %#
Replace
#with the job number, as shown in the first column of the output of thejobscommand. - You can kill a background process by entering:
kill PID
Replace
PIDwith the process ID of the job. If that fails, enter the following:kill -KILL PID
- To determine a job's PID, enter:
jobs -l
- If you are using
sh,ksh,bash, orzsh, 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?
This is document afnz in the Knowledge Base.
Last modified on 2017-05-16 11:52:58.
- Fill out this form to submit your issue to the UITS Support Center.
- Please note that you must be affiliated with Indiana University to receive support.
- All fields are required.
- Fill out this form to submit your comment to the IU Knowledge Base.
- If you are affiliated with Indiana University and need help with a computing problem, please use the I need help with a computing problem section above, or contact your campus Support Center.