Ubuntu – Need an interface for a gui shell script more powerful than zenity


I want to write shell script file that has a GUI with multiple input boxes for user entry.
I already tried zenity. Any ideas or advice would be appreciated.

Best Answer

Yad may be useful in this regard, it is a fork of zenity with more features, one of them the ability to create forms.

Here is a very simple example of a form:


frmdata=$(yad --title "Test Form" --form --field "Address" --field="Name")

frmaddr=$(echo $frmdata | awk 'BEGIN {FS="|" } { print $1 }')
frmname=$(echo $frmdata | awk 'BEGIN {FS="|" } { print $2 }')

echo $frmaddr > test.txt
echo $frmname >> test.txt

The above script will display a form like this:

Yad Form Example

After you enter your data and click ok or hit enter on the keyboard, the form data will be written to a text file called test.txt, I am using awk to separate the form data which is a string with a pipe as field separator, I believe there is a direct way to get the data without awk but I am no yad expert, please check the project home and ask questions, you may find a more elegant way.

How to get and install yad here:


yad project home:


more examples here:



I am late here but this may still be helpful.