Proxy de terminal ou tela sem emulação de terminal

3

Como posso tornar as aplicações de terminal imunes ao fim do emulador de terminal, mas ainda posso usar todos os recursos do terminal virtual?

\ begin {UPDATE}

Eu quero que meu aplicativo de terminal permaneça ativo e acessível se eu acidentalmente fechar o emulador de terminal. Essa funcionalidade é fornecida pela tela e pelo tmux, mas eles têm problemas com as cores e eles limpam a tela. Sim, eu posso rodar o shell dentro da tela, mas eu não quero que o shell permaneça ativo a menos que haja algum outro programa rodando.

\ end {UPDATE}

Eu vejo que isso deve ser algo como a tela, mas sem a emulação do terminal VT100, algo que apenas se aplica ao aplicativo que faz o terminal "terminal proxy" (como enviar algo para stdout / stderr ou usar stty para definir opções de terminal) para o terminal em que este proxy é executado.

// Eu sei sobre screen e altscreen on , mas isso faz isso ( screen with TERM=screen ):

ouisto(screencomTERM=rxvt-unicode):

enquanto eu quero isso ( rxvt-unicode sem screen ):

Eudescobriquetudoparecebemseeucompilarrxvt-unicodecomUSE=-xterm-color(naverdadevimseparececomasegundaimagemmesmosemtelaseeuadicionarestaopçãoUSE)edefinirTERM=screen-256color,maseufaçoNãogostodessasoluçãoalternativaporqueelarealmentemudadecorenãopossotercertezadequeelasempreseráalteradaapenasdestamaneira:

    
por ZyX 26.05.2010 / 13:19

4 respostas

3

Existe também um programa chamado "dtach" que faz exatamente isso, sem sobrepor seu próprio buffer de tela. (Eu sei que a resposta é muito tarde, mas eu postei, no entanto, para aqueles que google e tropeçam na página)

    
por 14.01.2011 / 08:28
0

Yes, I can run the shell inside screen, but I do not want the shell remain alive unless there is some other program running.

Uma solução seria executar o shell a partir da tela (como você disse que não queria), mas depois adicionar um trabalho Cron para executar a cada 10 minutos para verificar se há sessões de tela para fechar.

Se todas as sessões de tela forem desanexadas e nenhum programa além de shells estiver sendo executado, você poderá fechá-las.

    
por 02.06.2010 / 23:50
0

Use sakura . Ele avisa se você tentar fechar um vterm com um programa em execução.

    
por 22.07.2010 / 11:24
0

Você pode usar a tela para iniciar diretamente seu aplicativo para que a tela saia da aplicação:

screen <yourprog>

Veja o quinto parágrafo da manpage para mais detalhes.

    
por 18.08.2010 / 18:16