Existe-t-il un moyen de provoquer l' google-chromearrêt du terminal, outre l'utilisation killall google-chrome? 
Je voudrais pouvoir le fermer à partir d'un script sans le tuer.
Existe-t-il un moyen de provoquer l' google-chromearrêt du terminal, outre l'utilisation killall google-chrome? 
Je voudrais pouvoir le fermer à partir d'un script sans le tuer.
Réponses:
Peut wmctrl-être pourrait être d'une certaine aide. Vous pouvez utiliser l' -coption qui ferme une fenêtre avec élégance:
wmctrl -c chromeLa chaîne chromeest comparée aux titres des fenêtres. Notez que la fenêtre peut ne pas se fermer si certains messages apparaissent (par exemple lorsque plusieurs onglets sont ouverts).
wmctrl.
                    pkill -o chromefait cependant.
                    Cette commande quitte l’arborescence de processus Chrome avec élégance, dans tous les gestionnaires de fenêtres:
pkill --oldest chromeou si vous préférez:
/usr/bin/pkill --oldest --signal TERM -f chrome    Détails:
SIGTERM--oldestSIGTERMest le même que le signal 15, par conséquent --signal TERM, ou laissez-le simplement comme SIGTERMétant le signal par défautwmctrl fonctionne avec Unity et quelques autres mais ne fonctionne pas avec tous les gestionnaires de fenêtreswmctrl -c ferme une fenêtre à la fois, donc pour fermer toutes les fenêtres chromées, vous aurez besoin de quelque chose comme while wmctrl -c 'Google Chrome'; do sleep 0.2; done--oldestn'est pas une option: utiliser des -oœuvres.
                    -fargument de pkill ne fonctionne pas pour moi. J'ai d'autres processus en cours d'exécution en tant que root qui ont le mot chrome dans leurs lignes de commande, donc je reçois simplement une autorisation refusée. Sans -f, cela fonctionne parfaitement.
                    Cela fonctionne pour moi:
killall --quiet --signal 15 -- chromeNotez que j'utilise une commande plutôt verbeuse pour la garder lisible dans le code, bien sûr, vous pouvez également émettre:
killall -q -15 chromeOn Mac OS X, utilisez ceci à la place
pkill -a -i "Google Chrome"Ce qu'il fait est de rechercher un processus Google Chrome et de tuer également tous ses processus parents.
Extrait du manuel pkill
    -a          Include process ancestors in the match list.  By default, the
                current pgrep or pkill process and all of its ancestors are
                excluded (unless -v is used).
    -i          Ignore case distinctions in both the process table and the
                supplied pattern.Selon @ de keith-Cascio ' réponse , vous pouvez essayer de tuer au lieu le processus le plus ancien. Notez que cela n'a pas fonctionné pour moi.
pkill -o -i "Google Chrome"essayer:
kill -3 <pid_of_chrome>Cela enverra un signal "QUIT" à Chrome, qui, en fonction de votre gestionnaire de fenêtres, sera ce qu'il est généralement envoyé lorsque vous êtes invité à fermer.
killou killalllà où Chrome le voit comme un crash, et demande une restauration.
                    SIGQUITn'est généralement pas envoyé aux applications lorsqu'on leur demande de fermer (je ne connais pas de WM qui le font). WM_DELETE_WINDOWest la norme.
                    kill -15 <pid_of_chrome>fait ce que je cherchais. Mais, google-chromea plusieurs pids et il a fallu quelques essais pour obtenir le bon.