Find out the application under the mouse
Using xdotool
First make sure xdotool
is available on your system:
sudo apt-get install xdotool
The following command will print the process name of the window currently in focus:
cat "/proc/$(xdotool getwindowpid "$(xdotool getwindowfocus)")/comm"
To give yourself more time to focus the window / click on it you can prepend a small sleep duration:
sleep 5 && cat "/proc/$(xdotool getwindowpid "$(xdotool getwindowfocus)")/comm"
The process name should be displayed after a short amount of time.
Using wininfo
Wininfo is a graphical utility that displays various information on windows and their properties, including the PID (process ID) associated with the window:
wininfo
should be available in the official repositories:
sudo apt-get install wininfo
Having determined the PID of the window you can then look up the process name associated with it. There are various ways to do this, e.g. by looking at /proc
:
$ cat /proc/17002/comm
gnome-terminal
This would be the process name associated with the PID 17002
.
A more elegant way that allows inspecting the process tree context, as suggested by @Rmano:
$ pstree -a -s -l -p -u 17002
init,1
└─lightdm,1900
└─lightdm,3202 --session-child 12 19
└─lxsession,3307,glutanimate -s LXDE -e LXDE
└─openbox,3362 --config-file /home/glutanimate/.config/openbox/lxde-rc.xml
└─gnome-terminal,17002
├─bash,1841
├─bash,2332
├─bash,2424
│ └─pstree,2484 -a -s -l -p -u 17002
├─gnome-pty-helpe,1840
├─{gnome-terminal},1835
├─{gnome-terminal},1836
├─{gnome-terminal},1842
└─{gnome-terminal},2269
Of course you can also combine pstree
with the xdotool
option above (thanks to @rubo77 for pointing this out!):
sleep 2; pstree -spaul $(xdotool getwindowpid "$(xdotool getwindowfocus)")
Sources:
https://unix.stackexchange.com/q/38867/29245
http://www.linuxquestions.org/questions/debian-26/how-to-find-the-process-associated-with-a-top-level-x-window-907125/
https://superuser.com/q/632979/170160
You can create a keyboard-shortcut with this command:
zenity --info --text $(xprop $win_id WM_CLASS | cut -d" " -f4-)
You can use xprop
to get the Process ID of the clicked Window:
xprop $win_id _NET_WM_PID
then analyze it with pstree
:
pstree -spaul $(xprop $win_id _NET_WM_PID | cut -d" " -f3-)
This you can redirected to a text-info window with
pstree -spaul $(xprop $win_id _NET_WM_PID | cut -d" " -f3-)|zenity --text-info --title "pstree of clicked Window"
I tried to create a keyboard-shortcut for this last command (if you need it regularely), but for some reason This doesn't work.