Einfache Möglichkeit, Prozessinformationen aus einem Fenster abzurufen

18

Unter Windows kann ich Process Explorer verwenden und das Fadenkreuz in ein Fenster ziehen. Anschließend hebt Process Explorer den zugeordneten Prozess hervor.

Unter Ubuntu habe ich im System Monitor keine solche Funktion gefunden. Was ist der einfache Weg, um einen Prozess aus dem Fenster zu bekommen?

Ich bin bereit, einen alternativen Prozessmonitor oder andere Tools herunterzuladen.

Gqqnbig
quelle

Antworten:

19

Wenn Sie Terminal verwenden können, versuchen Sie Folgendes:

xprop | grep WM_CLASS

und Ihr Cursor sollte sich in ein Kreuz verwandeln, sodass Sie auf ein beliebiges Fenster klicken können, um dessen Prozessnamen zu erhalten. Wenn Sie nur die PID benötigen, versuchen Sie Folgendes:

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

Hoffe das hilft.

Abhishek Nair
quelle
6
grepist nicht wirklich notwendig, Sie können einen Eigenschaftsnamen als Argument angeben, um nur diesen anzuzeigen, wie xprop WM_CLASSdirekt. Beachten Sie, dass insbesondere das WM_CLASSnicht mit dem ausführbaren Prozess identisch sein muss, sondern ein beliebiger Wert sein kann, der vom Entwickler festgelegt wird.
Byte Commander
Es funktioniert wie ein Zauber, danke.
Gqqnbig
13

Die Verwendung xpropwird bereits in dieser anderen Antwort erwähnt und ist wahrscheinlich die beste Lösung.

Eine andere Möglichkeit könnte darin bestehen, wmctrl -lpalle von Ihrem Fenstermanager verwalteten Fenster zusammen mit ihren jeweiligen Prozess-IDs (PID) aufzulisten, sofern dies möglich ist:

$ 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

Sie können dann diese PID verwenden, um weitere Informationen über den Prozess zu erhalten, z. B . 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
quelle
Vielen Dank, dass Sie diesen Befehl geteilt haben. Ich mag eher den anderen visuellen Weg. Manchmal hat ein Fenster keine Titelleiste oder ist ohne Borad, was ich aus der Liste von wmctrl nicht wirklich ablesen kann.
Gqqnbig