Como recuperar a GUI / janela perdida

4

Agora estou enfrentando essa situação: estou executando várias instâncias do Matlab em um servidor de computação (sistema operacional do servidor: Xubuntu 14.04, sistema operacional da minha máquina local: Ubuntu 14.04). Eu usei NoMachine para se conectar ao servidor. NoMachine geralmente funciona bem, mas da última vez, NoMachine congelou e eu tive que forçar o NoMachine. Quando eu reiniciei o NoMachine e conectei de volta ao servidor, eu encontrei todas as janelas / GUI das minhas instâncias do Matlab desaparecidas. Agora eles estão sendo executados em segundo plano, pois eu posso vê-los no topo e eles ainda estão consumindo uma boa quantidade de recursos da CPU. Além disso, eu ainda posso observar a saída do processamento de dados na pasta de saída que eu direcionei o Matlab para salvar os dados processados, então posso dizer com segurança que eles estão rodando bem em segundo plano. No entanto, perdi todas as janelas / GUI de todas as instâncias do Matlab.

Na imagem, o comando top mostra que os matlabs ainda estão em execução e consumindo uma boa quantidade de recursos da CPU

Como posso recuperar essas janelas / GUI? Mais especificamente, quero restaurar esta janela da instância do matlab em execução em segundo plano.

Esta é a GUI do Matlab que eu quero recuperar

Eu posso ver o PID do Matlab de cima. Então, existe algum comando de terminal embutido como setWindowToFront (PID) que me ajude a recuperar as janelas perdidas pelo PID? De preferência, o comando interno, porque não tenho o privilégio de instalar qualquer pacote / aplicativo na máquina do servidor da escola.

ps. Eu não posso me dar ao luxo de matar a instância do matlab e reiniciar o matlab, porque o cálculo demora um mês para terminar, e estou apenas na metade do caminho agora.

ps. comando bg ou fg não pode ajudar, eles mostram "sem empregos"

ps. o windows / GUI não pode estar em outros espaços de trabalho porque eu tenho apenas um espaço de trabalho.

ps. Eu não lancei o matlab via terminal em primeiro lugar. Eu lancei o matlab clicando com o mouse.

Muito obrigado!

    
por Ray 22.01.2016 / 14:39

1 resposta

2
  1. Obtenha uma cópia de wmctrl , é uma simples & amp; pacote de comando único

    apt-get download wmctrl
    mkdir wmctrl_deleteme
    dpkg-deb -X wmctrl_1.07-7_amd64.deb wmctrl_deleteme/
    cd wmctrl_deleteme/usr/bin/
    

    É melhor colocá-lo em ~/bin para facilitar o uso.

  2. Verifique se essas janelas são gerenciadas pelo WM

    ./wmctrl -l
    
  3. Se estiverem listados, tente esta opção ( man wmctrl )

       -R <WIN>
              Move the window <WIN> to the current desktop, raise the window, and give it focus.
    

    Usando título ou id da janela, Exemplos:

    ./wmctrl -R Home
    ./wmctrl -i -R 0x02e00238
    
por user.dz 23.01.2016 / 19:05