É possível iniciar um comando a partir do bash e enviar um pressionamento de tecla a ele

2

Estou tentando iniciar o Firefox a partir do bash e quero que ele abra o webconsole no início (isso pode ser feito pressionando F12 rigth depois de iniciado). Existe um comando bash que inicia o programa e envia a tecla F12 ao iniciar? Eu já olhei para o xdotool e tentei criar um script bash, que inicia o firefox e então envia a chave com xdotool, mas o comando xdotool não é executado até que eu feche o firefox.

    
por Rui F Ribeiro 13.09.2015 / 21:39

1 resposta

2
#!/bin/sh 
set -e #abort if anything fails
firefox & #run firefox in the background
pid=$!    #remember its pid

#Poll X until firefox sets up a window
#remember the X id of the window
while [ -z "$id" ]; do
    id=$(xdotool search --onlyvisible --pid $pid) 
    sleep 0.1 #poll interval
done

#Bring the window to the front and send it the F12 key
xdotool windowactivate $id && xdotool key F12
disown "$pid"

Isso não é muito robusto, no entanto. Configurar firefox para abrir o console por si só seria melhor.

    
por 13.09.2015 / 22:06