Execute o comando no anexo de tela do Gnu

4

É possível que o GNU Screen detecte quando uma sessão foi anexada e para executar um comando? (O comando será um script de shell que eu escrevi)

Obrigado.

    
por Sandro 29.10.2010 / 06:38

1 resposta

2

O que exatamente você está tentando fazer? Eles provavelmente não respondem exatamente à sua pergunta, mas você pode adaptá-los às suas necessidades:

Você pode criar um script chamado screenr que reconecta uma sessão de tela após a primeira execução do script nessa sessão.

#!/bin/bash
screen -X exec /command/to/run
screen -r $@

Outra ideia pode ser colocar algo em seu .bashrc para verificar se você está executando a tela e depois executar um comando. Isso será executado sempre que você iniciar uma nova sessão de tela ou criar um novo shell na tela, mas não será executado se você anexar uma sessão de tela já em execução.

if [ $TERM = "screen-256color-bce" ]; then
    /command/to/run
fi

Editar: Depois de ver sua outra pergunta, parece que o comando screen setenv pode ser o que você quer, mas ele só define variáveis de ambiente para novos shells iniciados na tela, que ainda não estão rodando.

screen -X setenv DISPLAY $DISPLAY
    
por AdamR 29.10.2010 / 09:21

Tags