Apr 2, 2012

Shell background processes: what do characters in termination message mean?


I had three background processes, and here’s what I’ve got:

[1]   Done                    zcat jan.txt.gz > j
[2]-  Done                    zcat feb.txt.gz > f
[3]+  Done                    zcat mar.txt.gz > m

What do those ” “, “+”, “-” mean? Never noticed those before, it was always “+” I guess?

Asked by alamar


The + means that it is the most recent background process. This is the one that will become the foreground process if you type fg.

I don’t know about the - but I suspect it the one prior to the most recent one. This would be the one that would become the + if you kill the most recent one.

There may also be a current/old system the way cd - works.

Ah yes, the manual backs me up on both points.

You can use fg + and fg - to bring these jobs to the foreground.

You can also get a list of all your currently running jobs and their statuses with the jobs command.

Answered by Ladadadada

Related posts:

  1. How can you see the processes which you put to background?
  2. Run a pool of processes in shell
  3. Shell script kill background process on quit
  4. Shell script to create background SSH connection if none exists
  5. Why doesn’t “jobs” show a ssh tunnel I opened in the background?

Leave a comment