Você pode usar xdotool
para permitir que o usuário clique em uma janela e obtenha seu ID de processo. Então você pode usar kill
para enviar, por ex. os sinais STOP ou CONT para esse processo e congelar / descongelar dessa forma.
Primeiro, você provavelmente precisará instalar o xdotool
, já que ele não vem pré-instalado:
sudo apt install xdotool
Em seguida, o comando para obter o PID do processo que possui uma janela específica, que pode ser selecionada clicando com o mouse, seria:
xdotool selectwindow getwindowpid
Isso imprime o ID do processo numérico. Você pode usá-lo como argumento para kill -STOP
ou kill -CONT
para pausar e continuar o processo. Isso pode ser simplificado armazenando o PID em uma variável, como neste pequeno script abaixo, que pausa o processo da janela clicada por 5 segundos:
#!/bin/bash
wpid="$(xdotool selectwindow getwindowpid)"
kill -STOP "$wpid"
sleep 5
kill -CONT "$wpid"
Agora você pode salvar este script no seu computador e, por exemplo, ligá-lo a um atalho de teclado.
Note:
man xdotool
says about thegetwindowpid
subcommand:"This requires effort from the application owning a window and may not work for all windows."
Em outras palavras, pode não funcionar de todo ou pelo menos não exatamente como pretendido com algumas aplicações.
Também pode acontecer que várias janelas tenham o mesmo ID de processo correspondente, por exemplo, Todas as instâncias do terminal do gnome são de propriedade do mesmo pai. Nesse caso, o comando congelaria todos eles, o que pode não ser intencional.