Abra o novo terminal do script para obter entrada do usuário e usar entrada no script

0

É possível a partir de um shell script em segundo plano abrir um novo terminal (xterm, gnome-terminal, o que for), obter alguma entrada do usuário, fechar o terminal recém-aberto e usar os dados que foram inseridos?

    
por Zardoz 01.11.2010 / 00:58

2 respostas

4

Considere usar algo como zenity .

QUEST="$(zenity --entry --title="Answer these questions three" --text="What is your quest?")"
    
por 01.11.2010 / 01:19
3

Veja como você pode fazer isso usando xterm :

mkfifo answer.fifo
xterm -T window-title-string -n icon-string -e bash -c 'read -p "input-prompt: " answer; echo "$answer" > answer.fifo' &
answer=$(<answer.fifo)

Consulte man xterm para obter mais informações sobre como controlar o tamanho e a posição da janela e a cor e a fonte do texto, se quiser que a aparência seja diferente da padrão.

Fazê-lo com gnome-terminal seria semelhante, mas com menos opções para controlar inicialmente o tamanho, posição e cor da janela (você pode usar tput no script -e que você envia, embora).

    
por 01.11.2010 / 03:31