Usando xdotool
Primeiro verifique se xdotool
está disponível no seu sistema:
sudo apt-get install xdotool
O comando a seguir imprimirá o nome do processo da janela atualmente em foco:
cat "/proc/$(xdotool getwindowpid "$(xdotool getwindowfocus)")/comm"
Para ter mais tempo para focar a janela / clicar nela, você pode preceder uma pequena duração do sono:
sleep 5 && cat "/proc/$(xdotool getwindowpid "$(xdotool getwindowfocus)")/comm"
O nome do processo deve ser exibido após um curto período de tempo.
Usando wininfo
O Wininfo é um utilitário gráfico que exibe várias informações nas janelas e suas propriedades, incluindo o PID (ID do processo) associado à janela:
wininfo
deve estar disponível nos repositórios oficiais:
sudo apt-get install wininfo
Após determinar o PID da janela, você pode procurar o nome do processo associado a ele. Existem várias maneiras de fazer isso, por exemplo, observando /proc
:
$ cat /proc/17002/comm
gnome-terminal
Esse seria o nome do processo associado ao PID 17002
.
Uma maneira mais elegante que permite inspecionar o contexto da árvore de processos, conforme sugerido por @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
Obviamente, você também pode combinar pstree
com a xdotool
opção acima (obrigado a @ rubo77 por apontar isso!):
sleep 2; pstree -spaul $(xdotool getwindowpid "$(xdotool getwindowfocus)")
Fontes:
/unix//q/38867/29245
http://www.linuxquestions.org/questions/debian-26/how-to-find-the-process-associated-with-a-top-level-x-window-907125/
/superuser//q/632979/170160
pstree -a -s -l -p -u $PID
que é bastante bom ...echo $()
comando não é necessário.xdotool getwindowpid "$(xdotool getwindowfocus)"
→xdotool getwindowfocus getwindowpid
Você pode criar um atalho de teclado com este comando:
fonte
java-window
). Encontrei esses tipos de problemas há algum tempo atrás, quando estava tentando implementar regras específicas de aplicativos na minha configuração do gerenciador de janelas.Você pode usar
xprop
para obter o ID do processo da janela clicada:depois analise-o com
pstree
:Você pode redirecionar para uma janela de informações de texto com
Tentei criar um atalho de teclado para este último comando (se você precisar dele regularmente), mas por algum motivo Isso não funciona.
fonte
Com o xdtool e o yad instalados, você pode ter um ótimo aplicativo GUI.
fonte