+/- después de realizar un trabajo en segundo plano


21

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?

Respuestas:


19

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 -.

Ejemplo:

$ 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

2

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]-


Su descripción de la situación no está clara y el sistema no predice qué trabajo terminará primero.
Julie Pelletier

Veo lo que quieres decir, enfatizaré el punto principal
Klamz
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.