Escrevendo ("injetando") texto no terminal Ubuntu existente

Escrevendo ("injetando") texto no terminal Ubuntu existente

Dado o nome de umjá correndoterminal ( gnome-terminaltalvez?), existe uma maneira de escrever texto nele de outro programa?

Basicamente, estou procurando uma maneira de iniciar a compilação a partir de um editor de texto.

Responder1

Se você não os possui, instale xwininfo(no pacote x11-utils) e xvkbd:

sudo apt-get install x11-utils
sudo apt-get install xvkbd

Em seguida, encontre o ID da janela da sua "vítima":

xwininfo

o cursor se torna uma cruz --- clique na janela do terminal gnome onde deseja injetar o texto. Entre as informações, copie o id da janela:

xwininfo: Please select the window about which you
      would like information by clicking the
      mouse in that window.

xwininfo: Window id: 0x1a005be "romano@samsung-romano: ~"
[...]

Agora de outro terminal você pode injetar caracteres:

(0)samsung-romano:~% xvkbd -window 0x1a005be -text "ls -l\n"

(Lembre- \nse se quiser que o comando seja executado).

Há mais maneiras de identificar a janela --- veja opágina de manual do xvkbd. Um dos métodos é usar a propriedade “class” do XWindows. Você pode executar um terminal com um nome de classe específico de sua escolha, por exemplo:

xterm -class alfa & 

e então injetar nele via

xvkbd -window alfa -text "ls -l\n" 

(Eu usei xtermaqui, não consegui fazer isso com gnome-terminal--- não sei por quê).

informação relacionada