Esegui un lavoro in background
$ command &
Al termine, il terminale stampa
[n]+ command
o
[n]- command
Quindi a volte è un vantaggio e altre volte è un seguito negativo [n]
.
Cosa significa più / meno?
Esegui un lavoro in background
$ command &
Al termine, il terminale stampa
[n]+ command
o
[n]- command
Quindi a volte è un vantaggio e altre volte è un seguito negativo [n]
.
Cosa significa più / meno?
Risposte:
Devono distinguere tra lavoro attuale e precedente; l'ultimo lavoro e il secondo ultimo lavoro per più di due lavori, con +
per l'ultimo e -
per il secondo ultimo.
Da man bash
:
È possibile fare riferimento al lavoro precedente utilizzando
%-
. Se esiste un solo lavoro%+
e%-
possono entrambi essere utilizzati per fare riferimento a quel lavoro. Nell'output relativo ai lavori (ad esempio, l'output del comando jobs), il lavoro corrente viene sempre contrassegnato con a+
e il lavoro precedente 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
Immagino ti riferisca a quando controlli i lavori tramite $jobs
. Tuttavia, come probabilmente già saprai, n
indica il lavoro #. La [n] +
denota il lavoro finale che è stato chiamato.
[n] -
indica il penultimo lavoro chiamato.
Per esempio:
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 &
Ecco perché, in questo caso, il nostro sleep 50 &
è ultimo: [2]+
ed sleep 30 &
è il penultimo:[1]-