Возможно ли из фонового сценария оболочки открыть новый терминал (xterm, gnome-терминал и т.д.), Получить какой-либо пользовательский ввод, закрыть недавно открытый терминал и использовать введенные данные?
2 ответа
4
Попробуйте вместо этого использовать что-то вроде zenity
.
QUEST="$(zenity --entry --title="Answer these questions three" --text="What is your quest?")"
3
Вот как вы можете сделать это, используя 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)
См. man xterm
для получения дополнительной информации об управлении размером и положением окна, а также цветом и шрифтом текста, если вы хотите, чтобы внешний вид отличался от значения по умолчанию.
Выполнение этого с помощью gnome-terminal
будет аналогичным, но с меньшим количеством опций для первоначального контроля размера, положения и цвета окна (вы можете использовать tput
в скрипте -e
который вы отправляете).