[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: erreur avec ps -ef



Cette option aussi :
# ps aux
# kill -9 <n°_du_processus>
(éteint le processus + les sous processus éventuels jusqu'à neuf)

André


On Sunday 27 April 2014 01:50:44 Francois Lafont wrote:
> Le 26/04/2014 17:14, François TOURDE a écrit :
> >> Perso, j'ai ça :
> >>
> >> $ kill -9 $(ps -ef |grep mplayer |awk '{print $2}')
> >> bash: kill: (7159) - No such process
> >>
> >> En l'occurrence, je comprends effectivement le message d'erreur
> >> que j'ai ci-dessus.
> >>
> >> Par contre, je veux bien qu'on m'explique le message d'erreur
> >> que le PO obtient. Car ce message d'erreur là, non, je ne le
> >> comprends pas.
> >
> > Il vient du fait que quand tu passes la commande suivante:
> >
> >  ps -ef |grep mplayer |awk '{print $2}'
> >
> > tu peux avoir 2 réponses: celle du process mplayer lui-même, et celle du
> > process grep.
>
> Jusque là ok, j'avais bien conscience de cela.
>
> > Du coup, le kill va s'adresser aussi au grep, et le tuer.
>
> Alors là par contre, j'aimerais bien avoir un peu plus d'explication
> si c'est possible. Il y a 2 choses que je ne pige pas.
>
> 1. Tu dis que le kill va s'adresser au grep mais déjà, pour moi, quand
> on fait ça :
>
>     kill -9 $(ps -ef |grep mplayer |awk '{print $2}')
>
> j'ai du mal à imaginer que le « kill ... » soit lancé alors que
> le $(...) n'a pas fini son exécution. Je me trompe peut-être mais
> il me semble que, avant que la commande « kill ... » ne soit exécutée,
> il faut bien que le $(...) aille à son terme pour la simple et bonne
> raison que l'instruction « kill ... » ne sera connue qu'une fois
> la commande $(...) terminée.
>
> Je me trompe ?
>
> 2. Quand bien même, admettons que le timing que tu décris est le bon,
> ie le kill s'adresse au grep (chose qui me semble impossible comme je
> l'ai indiqué dans le 1), je ne vois toujours pas le rapport avec le
> message d'erreur obtenu par le PO, à savoir :
>
> Signal 18 (CONT) caught by ps (procps-ng version 3.3.9).
> ps:display.c:66: please report this bug
>
> La commande ps aurait donc attrapé le signal CONT qui est un signal
> qui entraîne par défaut la reprise du processus si celui-ci est stoppé.
> Quel rapport avec le fait que le kill aurait tué le grep ?
>
> > Dans ton cas, la seule réponse est celle du grep, mais le kill n'a pas
> > eu le temps de le tuer, il s'est fini avant.
>
> Effectivement, le grep s'est terminé avant et pour moi ce sera toujours
> le cas car, pour que l'instruction kill se lance, le $(...) doit d'abord
> se finir (sans quoi l'instruction kill n'est pas encore connue et je ne
> vois pas ce que l'os est en mesure d'exécuter). Évidemment, je serais
> ravi d'avoir des explications là-dessus, surtout si je me plante (ce qui
> n'est pas exclu du tout ;-)).
>
> Bref, je conçois parfaitement le message d'erreur « bash: kill: (7159)
> - No such process » car on cherche à tuer un process qui n'existe plus.
> En revanche, le message d'erreur du PO reste encore pour moi un
> mystère non résolu.
>
>
> --
> François Lafont


Reply to: