Problème pour tuer un processus ou un thread

Résolu
lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024 - Modifié le 31 juil. 2024 à 01:04
lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024 - 23 août 2024 à 20:24

Bonjour à tout.e.s :D,

J'apprends à utiliser l'outil d'automation autokey qui met à disposition un EDI basique et permet de scripter en Python3, mais une fois lancé, il n'y a pas de bouton pour interrompre l'exécution. La seule solution que j'ai trouvé est de rechercher le processus autokey et de le tuer. Mais ce n'est vraiment pas pratique car il faut relancer l'application, revenir au script, etc.

Par ailleurs, ce processus parent engendre 12 threads enfants et quand j'en tue un, le parent est tué aussi ce qui ne m'avance pas beaucoup (testé en tuant le 1er, l'avant dernier et le dernier enfant) :

root@host:~# ps aux | grep autokey | grep -v grep
user      198833  6.2  0.2 1146724 83252 ?       Sl   00:52   0:01 /usr/bin/python3 /usr/bin/autokey-gtk -c
root@host:~# pstree -p $( pgrep autokey | sort | tail -1 )
autokey-gtk(198833)─┬─{autokey-gtk}(198835)
                    # 11 autres threads autokey-gtk
root@host:~# ps -T -p $( pgrep autokey | sort | tail -1 )
    PID    SPID TTY          TIME CMD
 198833  198835 ?        00:00:00 gmain
 198833  198836 ?        00:00:00 gdbus
 198833  198844 ?        00:00:00 autokey-gtk
 ...
 198833  198857 ?        00:00:00 dconf worker
# J'ai conservé uniquement les threads parmi les 12 qui utilisent des commandes différentes

Ou alors il y a d'autres éléments qui m'échappent dont je ne connais pas le mécanisme lié avec les processus et les threads ...

Si quelqu'un.e peut m'aider ce serait vraiment cool :D

Avec adelphité,

lnj

Linux / Firefox 115.0


7 réponses

mamiemando Messages postés 33262 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 6 septembre 2024 7 777
Modifié le 21 août 2024 à 15:09

Bonjour,

En réponse à #20

/usr/bin/autokey n'est que le point d'entrée, il ne permet donc pas réellement de voir ce que fait le programme. Si on veut plonger dans le code, il vaut mieux directement regarder les sources. Dans ton cas, c'est à terme dans cette classe qu'on entre. On voit que :

  • autokey est basé sur des threads.
    • C'est confirmé par le résultat de ps, il n'est donc pas vraiment possible d'utiliser pkill ou kill puisqu'on ne sait pas exactement quel processus viser.
    • Je me demande ce qui se passerait si tu cliquais sur une fenêtre avec xkill sur une fenêtre autokey (ou de manière équivalent, un kill sur un thread particulier).
  • Rien ne semble prévu pour stopper un thread en particulier dans autokey.
    • Je n'ai rien vu dans la documentation ni dans l'implémentation.
    • Mes recherches Internet n'ont rien donné non plus.
    • Si l'application ne le permet pas, il faudrait pouvoir le faire soi-même avec les commandes systèmes appropriées. Or si on relis cette discussion (que j'ai déjà évoquée), ainsi que celle-ci, je ne pense pas que ce soit faisable.

Concernant ta vidéo, merci pour cette présentation, cela m'a permis de découvrir un peu autokey. L'outil est intéressant, mais toutefois, je n'en vois pas la réelle utilité de nos jours (en tout cas, me concernant).

  • Les raccourcis globaux permettent de remplacer autokey.
  • Beaucoup de cas d'usage qui avait motivés la création d'autokey sont désormais nativement implémentés :
    • dans la barre de lancement (alt+f2)
      • lancement/arrêt d'un programme
      • opérations "simples" (calculatrice, etc.)
      • recherches (sur Internet, sur le bureau...)
    • dans ton IDE

Bonne chance

1
lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024 52
22 août 2024 à 00:26

/usr/bin/autokey n'est que le point d'entrée, ... Dans ton cas, c'est à terme dans cette classe qu'on entre. On voit que :

autokey est basé sur des threads ...

Beaucoup de gratitude pour avoir creusé à ma place ;-)

Mais :

# man ps (paramètre -T)
ps -T -p $( pgrep autokey | sort | tail -1 )
# ou
pstree -p $( pgrep autokey | sort | tail -1 )

je croyais que ces commandes listaient justement ses threads ?

---

Je me demande ce qui se passerait si tu cliquais sur une fenêtre avec xkill sur une fenêtre autokey (ou de manière équivalent, un kill sur un thread particulier).

Ben le problème c'est qu'il n'y en a qu'une seule de fenêtre où tous les scripts sont centralisés et si tu fais xkill sur cette fenêtre ... autokey se ferme

---

L'outil est intéressant, mais toutefois, je n'en vois pas la réelle utilité de nos jours (en tout cas, me concernant).

Pour ma part, je me servais des scripts d'automation autohotkey, pour par exemple depuis une application donnée, déclencher une série de touches afin de modifier un réglage NON prévu par la personne qui l'a développé.

0
mamiemando Messages postés 33262 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 6 septembre 2024 7 777 > lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024
22 août 2024 à 15:43

je croyais que ces commandes listaient justement ses threads ?

Le problème n'est pas tant de les lister que de les tuer.

 Ben le problème c'est qu'il n'y en a qu'une seule de fenêtre où tous les scripts sont centralisés et si tu fais xkill sur cette fenêtre ... autokey se ferme

C'est ce que je craignais, tout est vu avec le même PID (à la différence de sous processus ou d'un fork). Les identifiants de threads (TID) sont un détail d'implémentation de la librairie qui implémente le threading. Je te renvoie à cette discussion qui explique que ce que tu crois être un PID n'est pas un PID au sens du kernel et donc de kill/xkill/pkill.

Pour ma part, je me servais des scripts d'automation autohotkey, pour par exemple depuis une application donnée, déclencher une série de touches afin de modifier un réglage NON prévu par la personne qui l'a développé.

J'ai bien compris, mais si c'est scriptable, alors ledit script est appelable depuis les raccourcis globaux de ton gestionnaire de fenêtre que j'évoquais précédemment. Dans l'exemple ci-dessous en appuyant sur Meta+K je lance l'exécutable /usr/bin/konsole (mais ça pourrait être un script écrit dans un langage arbitraire).

Ajout d'un raccourci global dans KDE plasma
Ajout d'un raccourci global dans KDE plasma

Il est également possible de déclencher des appels dbus si l'application ciblée le permet (voir ici). Par ailleurs, l'application considérée (par exemple vim, konsole, pycharm ...) permet peut-être de configurer ses propres aliases ou raccourcis claviers. Si aucune de ces conditions n'est réunie, alors en effet, un outil comme autohotkey devient intéressant.

1
lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024 52 > mamiemando Messages postés 33262 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 6 septembre 2024
22 août 2024 à 20:52

Je te renvoie à cette discussion qui explique que ce que tu crois être un PID n'est pas un PID au sens du kernel et donc de kill/xkill/pkill.

OK ! C'est tordu, l'utilisateur n'a pas les mêmes possibilités d'action que le noyau. Chouette alors :D !

---

Je pense qu'on arrive dans une impasse. J'avais déjà laissé tomber le sujet mais en tout cas je te remercie pour ton aide précieuse :D !

A bientôt !

lnj

0
mamiemando Messages postés 33262 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 6 septembre 2024 7 777 > lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024
23 août 2024 à 14:42

OK ! C'est tordu, l'utilisateur n'a pas les mêmes possibilités d'action que le noyau. Chouette alors :D !

En fait, tout est parfaitement normal :

  • Il y a un vrai intérêt à distinguer ce que le kernel et le système d'exploitation peuvent faire (notamment sur le plan de la sécurité).
  • Ce qui peut perturber, c'est que les nombres qui apparaissent à coder des threads peuvent être pris pour des PIDs, mais n'en sont pas. Or toutes les primitives kill/pkill/xkill sont basées sur un PID. C'est pas par méchanceté, rassure-toi, c'est juste que comme la notion de thread est implémentée par pthread, ni par le noyau, ni le système ne peuvent exposer de primitives.
  • De ce fait, les threads ne sont pas prévues pour être tuées (voir cette discussion ou cet article). Dans le cas présent, il faudrait plutôt utiliser des sous-processus si on voulait que ce soit possible (et du coup on aurait un PID). Je ne peux pas te dire pourquoi les concepteurs ont opté pour des threads plutôt que des sous-processus.

Je pense qu'on arrive dans une impasse. J'avais déjà laissé tomber le sujet mais en tout cas je te remercie pour ton aide précieuse :D !

Je pense aussi :-) C'était un plaisir de te répondre, mais si tu penses qu'on a fait le tour, je te propose de clore le sujet.

À bientôt :-)

1
lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024 52 > mamiemando Messages postés 33262 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 6 septembre 2024
23 août 2024 à 20:24

Je vais le clore bien qu'il ne soit pas résolu pour autant ;D

A bientôt !

lnj

0
lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024 52
2 août 2024 à 22:03

Merci beaucoup Agito :D

Oui j'ai complètement statué sur l'accès au processus depuis l'extérieur, mais ai occulté l'action depuis l'intérieur.

Je teste et essaye de comprendre les solutions que tu m'as proposé et ferais un retour quand j'obtiendrais satisfaction ... ou si je bloque :)

PS : comment fais-tu pour écrire du code iniligne au fil du message depuis l'éditeur de CCM ? Comme je ne sais pas faire, soit je mets en gras, soit j'utilise le bouton "Insérer un extrait de code" mais qui prend beaucoup de place ...


0

Bonjour

Copié collé c'est bon?

root@host:~# ps aux | grep autokey | grep -v grep
user      198833  6.2  0.2 1146724 83252 ?       Sl   00:52   0:01 /usr/bin/python3 /usr/bin/autokey-gtk -c
root@host:~# pstree -p $( pgrep autokey | sort | tail -1 )
autokey-gtk(198833)─┬─{autokey-gtk}(198835)
                    # 11 autres threads autokey-gtk
root@host:~# ps -T -p $( pgrep autokey | sort | tail -1 )
    PID    SPID TTY          TIME CMD
 198833  198835 ?        00:00:00 gmain
 198833  198836 ?        00:00:00 gdbus
 198833  198844 ?        00:00:00 autokey-gtk
 ...
 198833  198857 ?        00:00:00 dconf worker
 

0
lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024 52
3 août 2024 à 00:16

Hein ! Je ne comprends pas ton message ...

0
alix > lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024
3 août 2024 à 00:36

Bonjour

Ah, j'ai copié collé ton code dans l'éditeur de ccm et te demande si tu le vois bien.

Dans cette discussion:

https://forums.commentcamarche.net/forum/affich-38077106-probleme-pour-tuer-un-processus-ou-un-thread#dernier

0
lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024 52 > alix
3 août 2024 à 00:42

oui (non formaté) mais pourquoi me demandes tu ça ?

0
lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024 52 > alix
3 août 2024 à 00:43

Pour le code iniligne ?

0

Bonjour

Oui, j'ai pas trouvé la définition de iniligne.

Alors le copier collé ça prend un peu moins de place garde les tabulations (mais l'éditeur passe à la ligne pour celles qui sont trop longues), et pas de numérotation comme avec l'insertion de code, j'ai vu des exemples de python 3 sur internet.

0
lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024 52
Modifié le 3 août 2024 à 12:38

Ma question n'est sans doute pas claire ...

@Agito, un autre membre qui a participé au fil, avait posté un message dont le code était intégré dans le texte (de mémoire en rouge et sur fond gris) et non dans une zone "Insérer un extrait de code". Pour une raison qui m'échappe, son message a été supprimé, donc je ne peux pas te le montrer.

CCM autorise l'extrait de code qui est prévu pour plusieurs commandes mais qui prend de la place (sauts de ligne avant et après). Parfois on veut indiquer du code directement depuis le texte comme dans cette exemple en gras : "pour calculer la taille totale des profils fait du -sh /home". Apparemment Agito avait l'astuce pour le faire.

Je viens de me rendre compte que iniligne c'est une erreur de traduction de ma part car je confirme que ça n'existe pas. Le mot exact est uniligne (en anglais inline). Il concerne les commandes multiples écrites sur une seule ligne (comme par exemple dans les crons Linux qui n'autorisent qu'une ligne unique).

J'espère que c'est plus clair :D

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024 52
8 août 2024 à 19:04

J'ai abandonné l'idée de faire fonctionner ces scripts Python3 sous autokey. Autant tout faire avec un EDI digne de ce nom. D'ailleurs j'en viens presque à me demander la valeur ajoutée d'une telle application. Autant tout faire depuis les scripts ...

Donc définitivement NON résolu !


0
mamiemando Messages postés 33262 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 6 septembre 2024 7 777
16 août 2024 à 14:45

Bonjour @lenainjaune StatutContributeur

De manière générale tu peux tuer un processus avec :

pkill -9 nom_du_processus

S'il s'agit d'une application graphique tu peux aussi utiliser :

  • Avec X11, l'application xkill transforme ton curseur en tête de mort et invoque pkill pour tuer la prochaine application cliquée. Attention à ne pas viser dans la barre des programmes car cela dégommera la barre des programmes. 
xkill
  • Avec Wayland : xkill n'existe pas, mais il y a un raccourci dédié qui permet d'avoir le même comportement. Ce raccourci se personnalise dans le panneau de configuration (voir raccourcis globaux). Personnellement je l'ai mis sur ctrl alt échap.
Configuration du raccourci global pour tuer une application dans KDE plasma/wayland
Configuration du raccourci global pour tuer une application dans KDE plasma/wayland

Bonne chance

0
lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024 52
17 août 2024 à 05:08

Merci pour ta participation mamiemando :D mais ma question n'est pas de supprimer un processus, ça je sais faire ... En revanche je cherchais une solution pour tuer un script exécuté depuis autokey sans tout tuer autokey.

0
mamiemando Messages postés 33262 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 6 septembre 2024 7 777 > lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024
19 août 2024 à 15:23

Bonjour lenainjaune,

D'accord, j'ai mal compris ta question.

  • As-tu regardé cette discussion qui semble suggérer que tout est prévu dans autokey ?
  • Après, je pense que  tu peux toujours tuer le bon processus en utilisant en tandem ps faux ou pidof pour retrouver le bon PID, puis kill pour le dégommer.

L'autre point qui m'échappe, c'est qu'autokey semble plutôt s'adresser aux windowsiens (or ton message est dans le forum Linux). Du coup, pourquoi et dans quel but l'utilises-tu ?

Bonne chance

0
lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024 52 > mamiemando Messages postés 33262 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 6 septembre 2024
19 août 2024 à 18:37

autokey (Linux) n'est PAS autohotkey (Windows) ;-)

Ne t'inquiètes pas, je me suis aussi fait avoir un paquet de fois, puisque les moteurs de recherche comme G**gle suggèrent le second avant le premier.

Le truc que je trouvais intéressant, c'est qu'on code directement en Python mais bon comme c'est limité et peu ergonomique autant faire du full python avec un EDI digne de ce nom et coder les fonctionnalités ajoutées par l'outil autokey.

Par ailleurs je viens de découvrir AHK_X11 qui est une sorte de portage de autohotkey sous Linux. A voir vu que j'avais déjà codé des scripts autohotkey par le passé.

0
lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024 52 > mamiemando Messages postés 33262 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 6 septembre 2024
Modifié le 20 août 2024 à 00:12

Aussi ps faux et pidof python3 ne donnent rien de plus que dans mon premier message (OP). Je n'arrive pas à dissocier l'exécution du script autokey, des processus et des threads.

0
mamiemando Messages postés 33262 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 6 septembre 2024 7 777 > lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024
Modifié le 20 août 2024 à 15:19

autokey (Linux) n'est PAS autohotkey (Windows) ;-) Ne t'inquiètes pas, je me suis aussi fait avoir un paquet de fois, puisque les moteurs de recherche comme G**gle suggèrent le second avant le premier.

  • Ah oops :-) Je me suis aussi fait avoir !!
  • Bon j'ai lu un peu ceci et j'avoue ne pas trop voir l'intérêt. Soit effectivement, tu développes un IDE comme PyCharm fait probablement déjà ce que tu veux (par exemple générer des squelettes de docstring), soit tu veux créer des raccourcis globaux et ton environnement graphique le permet sûrement déjà (c'est le cas dans KDE, on peut créer de nouveau raccourci associés à un script ou une commande arbitraire). Mais bon ceci nous éloigne de ta question initiale.

 Je n'arrive pas à dissocier l'exécution du script autokey, des processus et des threads.

Concernant ps faux, j'aurais aimé voir comment étaient organisés autokey et ses sous processus (en particulier celui que tu souhaiterais tuer). Prenons un extrait de résultat de ps fx. J'ai lancé top dans un terminal, et je souhaite le tuer sans tuer le reste. 

   3376 pts/2    Ss     0:00  |   |   \_ /bin/bash
   3416 pts/2    S+     0:00  |   |   |   \_ top

Ici, si je tue le processus 3416, je ne tue pas les autres processus, dont son processus parent (3376). Dans ton cas il faut distinguer si on parle d'un sous processus (comme ici top), auquel cas kill s'applique, ou vraiment d'un thread (auquel cas, voir cette discussion).

Bonne chance

0
lenainjaune Messages postés 672 Date d'inscription mercredi 7 mai 2008 Statut Contributeur Dernière intervention 23 août 2024 52
Modifié le 21 août 2024 à 14:24

Ca remarche apparemment (ça fait depuis hier soir que je me tire les cheveux à essayer de comprendre à supprimer les cookies, à tester différents navigateurs). Bref :( !

Il semblerait que le problème soit en partie du (j'avais d'autres problèmes hier), à ce lien vers une courte video (j'ai découpé https de l'URL pour feinter) :

h t t p s ://raw.githubusercontent.com/phil294/AHK_X11/master/assets/demo.mp4

---

Comme tu n'as pas l'air de connaître, pour info, les outils autohotkey, autokey, AHK_X11 gèrent des scripts d'automation. Leur singularité, vient du fait qu'ils peut être procéduraux ou non. Tu peux coder très rapidement à un endroit, qu'en faisant la combinaison de touches [Ctrl][Alt][Entrée] tu ouvres le gestionnaire de tâche et à un autre endroit que quand tu saisis "btw" ça sera remplacé par "By The Way" (voir la courte vidéo tutoriel). Je me doute que ça se fait en Python, mais comme l'outil le gère bien, je l'utilisais pour ça.

---

Après avoir démarré autokey et exécuté le script résident Abbreviation from selection.py qui quand je tape une séquence de caractère, la remplace par une autre chaîne, j'ai :

user@host:~$ ps faux
...
user         3719  0.3  0.1 324404 45680 ?        Sl   20:12   0:15          \_ xfce4-panel --display :0.0 --sm-client-id 22757415b-b2cf-4bb7-b5fc-3180341b034e
user         3735  0.3  0.1 612468 56576 ?        Sl   20:12   0:16          |   \_ /usr/lib/x86_64-linux-gnu/xfce4/panel/wrapper-2.0 /usr/lib/x86_64-linux-gnu/xfce4/panel/plugins/libwhiskermenu.so 7 291504135 whiskermenu Menu Whisker Afficher un menu pour accéder facilement aux applications installées
user         8486  0.2  0.2 1147052 91104 ?       Sl   20:16   0:10          |   |   \_ /usr/bin/python3 /usr/bin/autokey-gtk -c
user         3760  0.0  0.1 394572 42928 ?        Sl   20:12   0:00          |   \_ /usr/lib/x86_64-linux-gnu/xfce4/panel/wrapper-2.0 /usr/lib/x86_64-linux-gnu/xfce4/panel/plugins/libsystray.so 6 291504137 systray Greffon de barre d’état Fournit des éléments d’indication d’état (indicateurs des applications) et des éléments de la zone de notification historique
...

Et les autres commandes testées :

user@host:~$ ps aux | grep autokey | grep -v grep
user         8486  0.2  0.2 1146796 91080 ?       Sl   20:16   0:09 /usr/bin/python3 /usr/bin/autokey-gtk -c
user@host:~$ pstree -p $( pgrep autokey | sort | tail -1 )
autokey-gtk(8486)─┬─{autokey-gtk}(8491)
                  ├─{autokey-gtk}(8492)
                  ├─{autokey-gtk}(8497)
                  ├─{autokey-gtk}(8498)
                  ├─{autokey-gtk}(8499)
                  ├─{autokey-gtk}(8500)
                  ├─{autokey-gtk}(8503)
                  ├─{autokey-gtk}(8504)
                  ├─{autokey-gtk}(8505)
                  ├─{autokey-gtk}(8506)
                  ├─{autokey-gtk}(8507)
                  └─{autokey-gtk}(8509)
user@host:~$ ps aux | grep -i selection | grep -v grep | wc -l
# => le script autokey exécuté n’apparaît même pas dans les processus
user@host:~$ ps -T -p $( pgrep autokey | sort | tail -1 )
    PID    SPID TTY          TIME CMD
   8486    8486 ?        00:00:05 autokey-gtk
   8486    8491 ?        00:00:00 gmain
   8486    8492 ?        00:00:00 gdbus
   8486    8497 ?        00:00:03 autokey-gtk
   8486    8498 ?        00:00:00 autokey-gtk
   8486    8499 ?        00:00:00 autokey-gtk
   8486    8500 ?        00:00:00 autokey-gtk
   8486    8503 ?        00:00:00 autokey-gtk
   8486    8504 ?        00:00:00 autokey-gtk
   8486    8505 ?        00:00:00 autokey-gtk
   8486    8506 ?        00:00:00 autokey-gtk
   8486    8507 ?        00:00:00 autokey-gtk
   8486    8509 ?        00:00:00 dconf worker

J'ai aussi examiné le code de /usr/bin/autokey-gtk qui est très court (mais mon niveau pythonien ne me permet pas d'en comprendre tout le fonctionnement (déjà comment arrive t-il dans le corp du if, __main__ est le nom par défaut quand on exécute ? Et en supposant qu'il y arrive, que se passe t-il ensuite ?) :

#!/usr/bin/python3
# EASY-INSTALL-ENTRY-SCRIPT: 'autokey==0.96.0','console_scripts','autokey-gtk'
__requires__ = 'autokey==0.96.0'
import re
import sys
from pkg_resources import load_entry_point

if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
    sys.exit(
        load_entry_point('autokey==0.96.0', 'console_scripts', 'autokey-gtk')()
    )

---

Bref, je ne sais vraiment pas comment tuer les scripts résidents sauf à tout tuer autokey (ce que je fais déjà).

Toutefois, cela fait bien longtemps que j'ai laissé tomber autokey pour revenir à un vrai EDI Python (j'utilise aussi PyCharm que je trouve vraiment excellent), toutefois sans les facilités d'automation.

Mais je suis toujours curieux de savoir comment tuer les scripts de manière dissociée.


0