web-dev-qa-db-fra.com

Comment redémarrer un script python sans tuer d'autres processus python

Je développe une application appelée nity Mail . Une option de liste rapide "Modifier les données des comptes" doit la redémarrer.

Fichier /usr/bin/unit-mail :

#!/bin/sh
python /usr/share/unity-mail/unity-mail.py $@

Fichier /usr/share/Unit-Mail/Unit-mail.py :

(Main python)

Lorsque j'essaie de terminer le script à l'aide de killall unity-mail, le processus d'unité de messagerie est tué, mais python est toujours en cours d'exécution, l'unité de messagerie est donc active.

J'ai essayé de mettre le script python directement dans/usr/bin/unit-mail, mais en appelant killall unity-mail dans ce cas dit "unie-mail: aucun processus trouvé".

La question:

Comment dois-je modifier/usr/bin/unit-mail pour que le tuer tue également python?

5
Dmitry Shachnev

Pas besoin de changer vos fichiers.

Tapez simplement pkill -f unity-mail pour tuer le script bash et le processus python.

2
Vanni Totaro

Vous devez utiliser le PID, de haut sur Terminal, vous pouvez voir les PID, de toute façon, c'est mieux du côté de la programmation, mais c'est une autre histoire

0
juancarlospaco