Existe uma maneira de fechar um aplicativo GUI da maneira amigável " por favor, saia agora ", sem acesso gráfico à janela do aplicativo?
Por exemplo, se a tela do Gnome / X cair em preto, eu gostaria de mudar para tty2 e fechar aplicativos como o Firefox de uma maneira que permita salvar suas configurações, etc. Na melhor das hipóteses, sem mais consultas do usuário.
fonte
pkill
para especificar o nome do executável. Por exemplo:pkill -HUP firefox-bin
pkill
matará todos eles. Por exemplo, executar este algumas vezes para fazer alguns processos em segundo plano:sed "s/Woo/woo/" < /dev/urandom >> /dev/null &
. Então façapkill -HUP sed
. Você matará todas as instâncias do sed que você iniciou, além de outras instâncias que executam um trabalho útil.pkill
também matará alguns aplicativos que você não espera: por exemplo, se você estiverchromium
executando e quiser matar um programa chamadorom
,pkill
será felizmentechromium
derrubado. Melhor usokillall
, que corresponderá apenas ao nome exato (embora não no Solaris, onde literalmente mata todos os processos ).pkill -x
para obter uma correspondência exata em vez de parcial. Pessoalmente, aproveito a correspondência parcial para salvar a digitação, mas você precisa saber o que a ferramenta faz. Sim, por padrão, corresponde a cadeias parciais. Outra opção útil é-f
combinar com a linha de comando completa em vez de apenas$0
.Você pode tentar:
ou
Pelo menos em alguns sistemas, quando o sistema está sendo desligado, todos os processos recebem o sinal TERM (15) antes de receber o sinal KILL (9). O HUP geralmente faz com que o aplicativo recarregue suas configurações, mas pode ser diferente processo por processo.
fonte
Não existe uma maneira geral de dizer a um aplicativo para sair e salvar sua configuração. Pode haver maneiras de notificar aplicativos usando uma estrutura específica, por exemplo,
dcop kfoo MainApplication-Interface quit
para alguns aplicativos do KDE 3. Lembre-se de que o aplicativo pode mostrar uma caixa de diálogo solicitando sua confirmação.Se a exibição do X se tornar inutilizável, mate o servidor X. Pressione Ctrl+ Alt+ BackSpace; se isso não funcionar, mate o processo do servidor X com
sudo pkill -x Xorg
. Quando o servidor X morre, todos os aplicativos X são notificados e tentam sair normalmente (não há garantia de que salvarão tudo, mas é sua melhor aposta).fonte
Semelhante à resposta de @ andcoz, se você não conhece o PID do aplicativo (suponho que você não o conheça de cor), tente o seguinte:
fonte
pkill -HUP [application_name]
:)Dois outros comandos que você pode querer considerar são
wmctrl -c
exdotool windowkill
. Não sei sewindowkill
é exatamente o que você procura, senão você pode estar interessado nowindowdelete
patch.fonte