According to the answer to this question How can I set default terminal used in Unity? I would script it as follows:
eval "$(gsettings get org.gnome.desktop.default-applications.terminal exec)"
If you would like to start a program inside the terminal, there is also the property 'exec-arg' which specifies the argument needed to execute something in the terminal by that specific terminal. For example when you want to execute a 'tail -f /var/log/messages':
CMD='tail -f /var/log/messages'
eval "$(gsettings get org.gnome.desktop.default-applications.terminal exec) $(gsettings get org.gnome.desktop.default-applications.terminal exec exec-arg) \$CMD"
The 'eval' is used because 'gsettings' returns the command and the argument in single-quotes.
This would then be a generic solution for all desktops running GNOME/Unity.
csh
orzsh
orbash
– Web-E Aug 16 '12 at 05:55