Aqui está a resposta:
Eu estava procurando a mesma coisa
Portanto, tenho uma sessão de tela em execução em um terminal / máquina Eu gostaria de escrever um script que seria anexado a essa sessão de tela em outra máquina, mas a uma nova janela na tela.
Alguém sabe como posso fazer isso? Eu sinto que pode ter algo a ver com screen -x (session name) -p (window number)
... se eu colocar "-" como o número da janela, ele vai para uma tela em branco, mas eu quero uma nova janela.
EDIT: Não estou realmente procurando uma solução, uma ferramenta legal chamada "tmux" substitui a tela e torna tudo isso trivial.
Você pode enviar comandos de tela arbitrários para uma sessão usando a opção -X.
Por exemplo, digamos que você inicie uma tela com o nome da sessão "teste":
screen -S test
De outro terminal (ou sobre ssh), você pode criar uma nova janela na sessão de tela original usando o seguinte comando:
screen -S test -x -X screen
Se você deseja executar algo na nova tela, basta anexar o nome do comando ao final. Por exemplo:
screen -S test -x -X screen mutt
irá executar o mutt na nova janela. Esteja ciente de que esta janela será fechada imediatamente quando o programa sair, portanto, não será útil se você quiser ver a saída de programas de curta duração.
Para mais comandos que podem ser enviados usando -X, procure por "Os seguintes comandos" na página manpage da tela.
Tags bash gnu-screen shell