Öffnen Sie ein neues Terminal aus dem Skript, um Benutzereingaben zu erhalten und die Eingaben im Skript zu verwenden

Öffnen Sie ein neues Terminal aus dem Skript, um Benutzereingaben zu erhalten und die Eingaben im Skript zu verwenden

Ist es möglich, über ein Shell-Skript im Hintergrund ein neues Terminal (XTerm, Gnome-Terminal usw.) zu öffnen, Benutzereingaben abzurufen, das neu geöffnete Terminal zu schließen und die eingegebenen Daten zu verwenden?

Antwort1

zenityErwägen Sie stattdessen die Verwendung von etwas wie :

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

Antwort2

So können Sie das tun 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)

Weitere Informationen zum Steuern der Größe und Position des Fensters sowie der Farbe und Schriftart des Textes finden Sie unter man xterm, wenn Sie eine andere als die Standarddarstellung wünschen.

Die Vorgehensweise mit gnome-terminalwäre ähnlich, allerdings mit weniger Optionen zur anfänglichen Steuerung von Fenstergröße, -position und -farbe (Sie könnten sie jedoch tputim -eSkript verwenden, das Sie senden).

verwandte Informationen