¿Qué significan esos +/- si finaliza el trabajo de Linux en segundo plano (comenzó con &)

43

Si comienzo un proceso con un ampersand ( &) al final, se bifurcará en segundo plano. Cuando termina, obtengo una salida similar a

[1]+  Fertig   my_script

Tengo una distribución localizada, pero esto no debería importar.

Lo que veo es el ID del trabajo entre corchetes seguido de un signo más ( +).

Si tengo varios trabajos iniciados en paralelo, obtengo

[1]-  Fertig   my_script
[2]+  Fertig   my_script

Ahora tengo un menos (- ) para el primer trabajo y un más ( +) para el segundo.

Me pregunto, ¿qué esos + / -significa.

No se pudo encontrar ninguna respuesta con los motores de búsqueda de Internet.

Phil
fuente

Respuestas:

57

De man bash:

En la salida correspondiente a los trabajos (por ejemplo, la salida del jobscomando), el trabajo actual siempre se marca con a +, y el trabajo anterior con a -.

Es decir, el trabajo marcado con a +es el último que se envió al fondo.

También es el que se pondrá en primer plano cuando fgse use sin argumentos:

$ /tmp/script &
[1] 9871
$ /tmp/script2 &
[2] 9876
$ /tmp/script3 &
[3] 9881
$ /tmp/script4 &
[4] 9886
$ jobs
[1]   Running                 /tmp/script &
[2]   Running                 /tmp/script2 &
[3]-  Running                 /tmp/script3 &
[4]+  Running                 /tmp/script4 &
$ fg
/tmp/script4

El trabajo marcado con un -se envió a segundo plano en último lugar. Otros trabajos en segundo plano no están marcados.

jaume
fuente
Un placer, me alegro de poder ayudar.
jaume
1
Entonces, el + es útil para decir lo que harán los comandos fg / bg, pero ¿es útil para algo?
tsbertalan
@tsbertalan Estoy de acuerdo, no veo ningún uso para ello. Me resulta confuso, demasiado, prefiero esperar el - para identificar el trabajo enviado primero a un segundo plano, pero tal vez es sólo yo ...
jaume
A veces veo dos ventajas o dos desventajas allí. Realmente no se ajusta a la definición de 'último' o 'actual'. Eso es bash 4.3.42.
Jan-Philip Gehrcke
8
@tsbertalan hago Ctrl + Z, luego fg -para cambiar entre dos trabajos. El signo menos es útil.
cosyconemotel