Je pense que si j'avais besoin de faire ça, je modifierais ce script pour qu'au lieu qu'il tue la fenêtre ayant le focus, il affiche le pid. À partir de la, j'utiliserai pstree pour savoir à qui est le pid ainsi que qui sont ses parents (au cas ou le dialogue ne serait pas dans le même processus que l'application qui en a besoin).
Bien sûr, soit il faut lier le script qui en résulterait à un raccourcis clavier, soit il faut ajouter un délai avant de l'exécuter, le temps d'aller donner le focus à la cible.
Je pensais qu'il serait possible d'utiliser xkill pour retrouver le pid du processus ciblé, mais non. Peut-être avec un autre outil X... Dommage, ça aurait été plus simple.
Bon, en gros, le script devrais ressembler a (je viens de tester, chez moi, ça marche):
C'est sûrement améliorable, par exemple man pstree signale une option -H pour remplacer le bordel après pstree, mais chez moi, ça marche pas.
À noter que ce code est fait pour être lancé à partir d'un script dans un terminal, pas à partir d'un raccourcis clavier, parce que je ne stocke rien, j'affiche directement. Pour modifier le temps d'attente, c'est la ligne "sleep 2", il faut modifier le 2: ce sont des secondes.
# un script
Posté par freem . En réponse au message lister les boîtes de dialogue ouvertes. Évalué à 5.
Je pense que si j'avais besoin de faire ça, je modifierais ce script pour qu'au lieu qu'il tue la fenêtre ayant le focus, il affiche le pid. À partir de la, j'utiliserai pstree pour savoir à qui est le pid ainsi que qui sont ses parents (au cas ou le dialogue ne serait pas dans le même processus que l'application qui en a besoin).
Bien sûr, soit il faut lier le script qui en résulterait à un raccourcis clavier, soit il faut ajouter un délai avant de l'exécuter, le temps d'aller donner le focus à la cible.
Je pensais qu'il serait possible d'utiliser xkill pour retrouver le pid du processus ciblé, mais non. Peut-être avec un autre outil X... Dommage, ça aurait été plus simple.
Bon, en gros, le script devrais ressembler a (je viens de tester, chez moi, ça marche):
C'est sûrement améliorable, par exemple man pstree signale une option -H pour remplacer le bordel après pstree, mais chez moi, ça marche pas.
À noter que ce code est fait pour être lancé à partir d'un script dans un terminal, pas à partir d'un raccourcis clavier, parce que je ne stocke rien, j'affiche directement. Pour modifier le temps d'attente, c'est la ligne "sleep 2", il faut modifier le 2: ce sont des secondes.