it-swarm-pt.com

Enviando entrada para uma sessão de tela de fora

Meu cenário é este:

Tenho uma sessão de tela em execução em um local remoto. Dentro desta tela está um programa baseado em consolação. Quando executado sem tela, este programa inicia no terminal e aceita comandos em sua entrada padrão.

O que eu quero é uma forma de enviar remotamente um comando para a tela para que esse comando seja recebido pelo programa de console. Talvez assim:

Meu PC -> SSH Send Msg Auto -> Screen Session -> Program (Run command recebido)

Portanto, de um PC remoto, posso enviar comandos SSH para a tela que os envia para o programa. O programa os aceita e os executa.

18
Luis Alvarado

Se bem entendi, você deseja enviar dados para um programa em execução dentro de uma sessão de tela. Você pode fazer isso com o comando stuff da tela. Use a tela -X opção para executar um comando em uma sessão de tela sem anexar a ela.

screen -S sessionname -p windowname -X stuff 'command1
command2
'

Se você quiser ver a saída do programa, consulte os comandos hardcopy, log e logfile.

17