Minus and Plus Sign in jobs Process

job-controlprocess

These commands are running in the background:

foo@contoso ~ $ sleep 30 &
foo@contoso ~ $ sleep 60 &
foo@contoso ~ $ sleep 90 &

What is the minus and plus sign after running jobs process?

foo@contoso ~ $ jobs
[1]   Running                 sleep 30 &
[2]-  Running                 sleep 60 &
[3]+  Running                 sleep 90 &

Best Answer

From man jobs(1P):

<current> The character '+' identifies the job that would be used as a default for the fg or bg utilities; this job can also be specified using the job_id %+ or "%%". The character '−' identifies the job that would become the default if the current default job were to exit; this job can also be specified using the job_id %−. For other jobs, this field is a <space>.
Related Question