xterm sem janelas? (Fingindo um terminal para um processo)

2

Estou lutando com um problema bastante estranho com o Matlab.

O script de inicialização está localizado em /opt/matlab_2013b/bin e é chamado de matlab .

  • Quando eu o executo no terminal, tudo funciona bem.

Mas eu quero fazer um lançador para ele no painel do Xfce.

  • Com apenas isso, ele cai imediatamente: /opt/matlab_2013b/bin/matlab
  • Quando uso xterm -e "cd /opt/matlab_2013b/bin; ./matlab" , funciona, mas tenho um xterm inútil flutuando. (Mesmo resultado, se eu usar o acima e selecione "start in terminal" - então eu tenho um lxterminal , não uma grande melhoria)
  • sh -c "cd /opt/matlab_2013b/bin; ./matlab" não funciona (achei que talvez fosse enganar o matlab ao pensar que está em um terminal, mas não

Eu acho que os scripts de inicialização devem de alguma forma depender de serem invocados a partir de um terminal interativo.

Existe alguma maneira de executar o xterm ou outro terminal sem a janela? De modo que o processo que corre nele acha que está no terminal real, mas não há janela aparecendo?

    
por MightyPork 02.03.2015 / 13:42

1 resposta

4

Você pode fazer isso com screen no modo desvinculado. Coloque algo assim em seu script de inicialização:

screen -d -m /opt/matlab_2013b/bin/matlab

Ele criará uma sessão de tela desanexada, que deve permitir que o script seja iniciado. Você pode anexar a sessão da tela normalmente a qualquer momento.

Você quase certamente pode conseguir o mesmo efeito com tmux , mas eu não usei o suficiente para descobrir.

    
por 02.03.2015 / 14:02