How To: Control Jobs from the Linux Command Line
Every command you give is a job that is executed. A job can be suspended, placed in the background, moved back to the foreground or terminated.
Most commands like ls are executed fast, but things like moving huge files occupy your terminal for quite a while. In these cases the job can be placed in the background, allowing you to execute other commands in the meantime.
While running a command (job) you can pause/suspend it with ctrl-z and kill it with ctrl-c.
While running a job you can use shortcuts:
To suspend a job: CTRL-z
To terminate a job: CTRL-c
Move a suspended job to the foreground fg
Continue a suspended job in the background bg
List all jobs jobs
Kill a job (%N where N is the job number) kill %N && fg
Start a job directly in the background command &
How to run, suspend and continue a command in the background
Examples of how to run a job in the background:
$ cp video.avi /pub/videos Ctrl-z + Stopped cp video.avi /pub/videos $ + cp video.avi /pub/videos $ bg $ + Done cp video.avi /pub/videos </code> Putting a job in the background with & when executing <code bash> $ cp video.avi /pub/videos &  6510 $ jobs + cp video.avi /pub/videos & $ + Done cp video.avi /pub/videos & </code> Killing a running job <code bash> $ cp video.avi /pub/videos Ctrl-z $ kill %1 && fg cp video.avi /pub/videos Terminated
Note that `jobs` applies to the running jobs in your current shell, use `top` or `ps -aux` to list all the running jobs on your computer.