스크립트에서 새 터미널을 열어 사용자 입력을 얻고 스크립트에서 입력 사용

스크립트에서 새 터미널을 열어 사용자 입력을 얻고 스크립트에서 입력 사용

백그라운드 쉘 스크립트에서 새 터미널(xterm, gnome-terminal 등)을 열고, 사용자 입력을 받고, 새로 열린 터미널을 닫고 입력된 데이터를 사용할 수 있습니까?

답변1

대신에 다음과 같은 것을 사용해 보세요 zenity.

QUEST="$(zenity --entry --title="Answer these questions three" --text="What is your quest?")"

답변2

다음을 사용하여 이를 수행할 수 있는 방법은 다음과 같습니다 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

관련 정보