Que signifient ces +/- si le travail Linux en arrière-plan se termine (commencé par &)


44

Si je lance un processus avec une esperluette ( &) à la fin, il sera déplacé en arrière-plan. Quand il a fini, je reçois un résultat similaire à

[1]+  Fertig   my_script

J'ai une distribution localisée, mais cela ne devrait pas avoir d'importance.

Ce que je vois, c'est l'identifiant de travail entre crochets suivi d'un plus ( +).

Si plusieurs emplois sont démarrés en parallèle, je reçois

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

Maintenant, j'ai un moins ( -) pour le premier emploi et un plus ( +) pour le second.

Je me demande, ce que ceux +/ -moyenne.

Impossible de trouver une réponse à l'aide des moteurs de recherche Internet.

Réponses:


58

De man bash:

Dans les résultats relatifs aux travaux (par exemple, le résultat de la jobscommande), le travail en cours est toujours signalé par un +et le travail précédent par un -.

C'est-à-dire que le travail marqué avec a +est celui qui a été envoyé en arrière-plan en dernier.

C'est aussi celui qui sera mis au premier plan lorsqu'il fgest utilisé sans arguments:

$ /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

Le travail marqué avec a -été envoyé à l'arrière-plan en dernier dernier. Les autres travaux en arrière-plan ne sont pas signalés.


Mon plaisir, je suis content d'avoir pu aider.
Jaume

1
Donc, le + est utile pour dire ce que les commandes fg / bg feront, mais le - est-il utile à quelque chose?
Tsbertalan

@tsbertalan Je suis d'accord, je n'en vois pas l'utilité. Je trouve cela déroutant, moi aussi, je m'attendrais plutôt à - identifier le travail envoyé en premier à l'arrière-plan, mais c'est peut-être juste moi ...
jaume

Je vois parfois deux avantages ou deux inconvénients. Ne correspond pas vraiment à la définition "dernière" ou "actuelle". C'est bash 4.3.42.
Jan-Philip Gehrcke

8
@tsbertalan je fais Ctrl + Z, puis fg -pour basculer entre deux travaux. Le signe moins est pratique.
cozyconemotel
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.