After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 747108 - the -e cmd option not honored like in xterm
the -e cmd option not honored like in xterm
Status: RESOLVED DUPLICATE of bug 152717
Product: vte
Classification: Core
Component: general
unspecified
Other All
: Normal normal
: ---
Assigned To: VTE Maintainers
VTE Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-03-31 12:17 UTC by Holger J.
Modified: 2015-03-31 12:59 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Holger J. 2015-03-31 12:17:59 UTC
Hi,

I used different vte based terminal emulators in the past but recently i found out the -e option isn't honoured like in xterm eg:

xterm/uxterm -e "sleep 5; echo a; sleep 3"
opens window -> sleeps 5s -> outputs a -> sleeps 3s -> closes

<any vte based terminal> -e "sleep 5; echo a; sleep 3"
opens window -> closes window

Also i did some tests with different terminals:

vtebased (xfce4-terminal, lxterminal, sakura) --> failed
non vte based(terminology, eterm, qterminal, konsole, xterm) --> worked

the main issue is also that all debian based(and some non debian based) distributions use the alternatives system which link the installed terminal of choice to x-terminal-emulator. So "x-terminal-emulator -e <cmd>" has replaced the most terminal specific commands in shell scripts to execute commands in a 2nd terminal window. But since vte based terminals fail to execute more than one command they are breaking the whole script.

regards
Comment 1 Christian Persch 2015-03-31 12:59:56 UTC
This is deliberate, see bug 152717. Also, if you want to start a shell and give it arguments, you need to use bash -c '...' since arguments are not passed to a shell (bug 163148).

That said, argument parsing has nothing to do with vte, so if other vte-based terminals do the same as g-t, it's just coincidence.

Finally, actually both -e nor -x are deprecated; the only supported way of passing a command and arguments is by using a '--' separator to terminate the g-t arguments and begin the command-with-arguments.

*** This bug has been marked as a duplicate of bug 152717 ***