2009-05-19 7 views
1

en particulier les deux derniers avec '-' et '+' respectivement, qu'est-ce que cela signifie sur terre?que signifie cette sortie?

[1] Done     php start.php bots/admin32.bot.php 

[2] Done     php start.php bots/admin36.bot.php 

[3] Done     php start.php bots/admin10.bot.php 

[4] Done     php start.php bots/admin11.bot.php 

[5] Done     php start.php bots/admin13.bot.php 

[6] Done     php start.php bots/admin3.bot.php 

[7]- Done     php start.php bots/admin4.bot.php 

[8]+ Done     php start.php bots/admin7.bot.php 

[[email protected] robot]# 
+0

Pouvez-vous expliquer ce que vous essayez de faire? –

+0

Juste une expérience facile: sommeil 1s & sleep 1s & sleep 1s &, puis attendez et appuyez sur retour –

Répondre

1

Je pense que votre commande contient le caractère &, ce qui est à l'origine de la commande à exécuter en arrière-plan. Lorsque la commande se termine, elle imprime cette sortie.

Exemple:

$ echo 1 & 
[1] 16021 
$ 
[1]+ Done     echo 1 

Pour éviter que cela se produise, je cite le caractère &. Il est probablement partie d'une URL dans votre cas, vous pouvez utiliser:

$ wget "http://www.example.com/index.php?a=1&b=2" 

En ce qui concerne les signes + et -, ils se réfèrent aux emplois actuels et précédents, respectivement. Voir cette page au job control in bash pour plus d'informations.

+0

quand vous parlez de comme il est fait, voulez-vous dire le processus est mort? mais j'ai utilisé ps -ef seulement pour trouver qu'il est encore en vie. – omg

+0

Lorsque le mot «Terminé» est imprimé, cela signifie que le processus est terminé. Vous avez probablement beaucoup de processus exécutant la même commande ou quelque chose. –

+0

'ps -e' montre tous les processus sur le système. Pour ceux qui appartiennent à votre session en cours, utilisez 'ps' (' ps -H' vous donne une vue arborescente). – ephemient

8

De l'Bash Reference Manual,

Numéro d'emploi n peut être appelé « %n ». Les symboles '%%' et '%+' font référence à la notion de shell du travail en cours, qui est le dernier travail arrêté alors qu'il était au premier plan ou démarré en arrière-plan. Un seul '%' (sans les spécifications de travail) fait également référence au travail en cours. Le travail précédent peut être référencé en utilisant '%-'. S'il n'y a qu'un seul travail, '%+' et '%-' peuvent tous deux être utilisés pour faire référence à ce travail. Dans la sortie relative aux travaux (par exemple, la sortie de la commande jobs), le travail en cours est toujours signalé par un '+' et le travail précédent par un '-'.

Dans la sortie Bash lors du démarrage et l'arrêt de travail,

[n]+état

signifie "emploi %n (aka emploi %+) est maintenant état".