Envie comandos para outro terminal

1

Eu tenho esta configuração onde eu tenho computador com ssh e um display onde eu tenho um usuário logado no terminal. O que eu quero fazer é enviar comandos como se eu estivesse usando essa sessão local com o teclado. Eu tentei echo para / dev / tty1 mas apenas mostra o que eu digitei em vez de executá-lo. O que faz sentido O sistema só tem bash assim nenhuma interface gráfica ou qualquer coisa assim.

    
por hene193 31.08.2016 / 00:24

1 resposta

3

O TIOCSTI ioctl pode injetar caracteres em um terminal, ou veja uinput no Linux para gerar entrada de teclado (ou mouse!).

  • ttywrite.c - implementação de amostra C
  • Term::TtyWrite - Implementação do Perl

    $ sudo perl -MTerm::TtyWrite \
      -e 'Term::TtyWrite->new("/dev/pts/2")->write("echo hi\n")'
    
por 31.08.2016 / 00:39