Ejecuta un trabajo en segundo plano
$ command &
Cuando está hecho, el terminal imprime
[n]+ command
o
[n]- command
Entonces, a veces es un plus y otras veces es un seguimiento negativo [n].
¿Qué significa más / menos?
fuente
Ejecuta un trabajo en segundo plano
$ command &
Cuando está hecho, el terminal imprime
[n]+ command
o
[n]- command
Entonces, a veces es un plus y otras veces es un seguimiento negativo [n].
¿Qué significa más / menos?
Deben distinguir entre el trabajo actual y el anterior; el último trabajo y el segundo último trabajo para más de dos trabajos, con +el último y -el segundo último.
De man bash:
Se puede hacer referencia al trabajo anterior usando
%-. Si solo hay un trabajo,%+y%-ambos pueden usarse para referirse a ese trabajo. En la salida correspondiente a los trabajos (p. Ej., La salida del comando de trabajos), el trabajo actual siempre se marca con a+, y el trabajo anterior con a-.
$ sleep 5 &
[1] 21795
$ sleep 5 &
[2] 21796
$ sleep 5 &
[3] 21797
$ sleep 5 &
[4] 21798
$ jobs
[1] Running sleep 5 &
[2] Running sleep 5 &
[3]- Running sleep 5 &
[4]+ Running sleep 5 &
$
[1] Done sleep 5
[2] Done sleep 5
[3]- Done sleep 5
[4]+ Done sleep 5
Supongo que te estás refiriendo cuando revisas trabajos a través de $jobs. Sin embargo, como probablemente ya sepa, ndenota el trabajo #. El [n] +denota el trabajo final que se llamó.
[n] -denota el penúltimo trabajo que se llama.
Por ejemplo:
chris@chris-VirtualBox:~$ sleep 30 &
[1] 904
chris@chris-VirtualBox:~$ sleep 50 &
[2] 972
chris@chris-VirtualBox:~$ jobs
[1]- Running sleep 30 &
[2]+ Running sleep 50 &
Por eso, en este caso, nuestro sleep 50 &es el último: [2]+y sleep 30 &es el penúltimo:[1]-