Un moyen facile d'obtenir des informations sur le processus à partir d'une fenêtre

18

Sous Windows, je peux utiliser Process Explorer et faire glisser son réticule vers une fenêtre, puis Process Explorer met en surbrillance le processus associé.

Sur Ubuntu, je n'ai pas trouvé une telle fonction dans System Monitor. Quel est le moyen le plus simple d'obtenir un processus à partir d'une fenêtre?

Je suis prêt à télécharger un moniteur de processus alternatif ou d'autres outils.

Gqqnbig
la source

Réponses:

19

Si vous pouvez utiliser Terminal, essayez ceci:

xprop | grep WM_CLASS

et votre curseur devrait se transformer en croix vous permettant de cliquer sur n'importe quelle fenêtre pour obtenir son nom de processus. Si vous avez juste besoin du PID, essayez:

xprop | awk '/PID/ {print $3}'

J'espère que cela t'aides.

Abhishek Nair
la source
6
grepn'est pas vraiment nécessaire, vous pouvez donner un nom de propriété comme argument pour n'afficher que celui-ci, comme xprop WM_CLASSdirectement. Notez que le WM_CLASSfichier ne doit pas nécessairement être identique à l'exécutable du processus, il peut s'agir d'une valeur arbitraire définie par le développeur.
Byte Commander
Cela fonctionne comme un charme, merci.
Gqqnbig
13

L'utilisation xpropest déjà mentionnée dans cette autre réponse et probablement la meilleure solution.

Une autre façon pourrait être d'utiliser wmctrl -lppour répertorier toutes les fenêtres gérées par votre gestionnaire de fenêtres avec leurs ID de processus respectifs (PID) dans la mesure du possible:

$ wmctrl -lp
0x03a00002  0 1570   type40mark3 XdndCollectionWindowImp
0x03a00003  0 1570   type40mark3 unity-launcher
0x03a00004  0 1570   type40mark3 unity-panel
0x03a00005  0 1570   type40mark3 unity-dash
0x03a00006  0 1570   type40mark3 Hud
0x02c0000a -1 302    type40mark3 Desktop
0x08a00003  0 8861   type40mark3 18.04 - Easy way to get process from window - Ask Ubuntu - Mozilla Firefox
0x08a00033  0 8861   type40mark3 Some other site in a different window - Mozilla Firefox
0x0840b72c  0 20705  type40mark3 bytecommander@type40mark3: ~
0x08800001  0 7389   type40mark3 New Tab - Chromium

Vous pouvez ensuite utiliser ce PID pour obtenir plus d'informations sur le processus, par exemple avec ps aux -q YOUR_PID_HERE:

$ ps aux -q 20705
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
bytecom+ 20705  0.0  0.2 676820 32268 ?        Sl   Jun28   1:58 /usr/lib/gnome-terminal/gnome-terminal-server
Byte Commander
la source
Merci d'avoir partagé cette commande. J'aime plus l'autre façon visuelle. Parfois, une fenêtre n'a pas de barre de titre ou est sans borad, je ne peux pas vraiment le dire à partir de cette liste donnée par wmctrl.
Gqqnbig