Respuestas:
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, n
denota 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]-