從腳本打開新終端以獲取用戶輸入並在腳本中使用輸入

從腳本打開新終端以獲取用戶輸入並在腳本中使用輸入

是否可以從後台 shell 腳本開啟一個新終端機(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

相關內容