I wanted to execute some command in terminal emulator, like Konsole, but I need to make this cross-desktop.

Is there some command like xdg-open, but for getting the default terminal emulator?

I'm using Ubuntu.


In Debian, you could just call x-terminal-emulator -e /some/command, as this points to the terminal emulator configured by Debian's "alternative" mechanism. It's configured via

# update-alternatives --config x-terminal-emulator

which lets you chose which of the installed X11 terminal emulators to use as the default one, i.e. as x-terminal-emulator. In the end, it's a symlink construction, e.g. for gnome-terminal:

$ which x-terminal-emulator
$ ls -al /usr/bin/x-terminal-emulator 
lrwxrwxrwx 1 root root 37 Apr 26  2010 /usr/bin/x-terminal-emulator -> /etc/alternatives/x-terminal-emulator
$ ls -al /etc/alternatives/x-terminal-emulator
lrwxrwxrwx 1 root root 31 Apr 26  2010 /etc/alternatives/x-terminal-emulator -> /usr/bin/gnome-terminal.wrapper
$ file /usr/bin/gnome-terminal.wrapper
/usr/bin/gnome-terminal.wrapper: Perl script, ASCII text executable

Some remarks,

|improve this answer|||||
  • Unfortunately, it does not work on Fedora 16 with Gnome 3.2.1 – fheub Feb 24 '12 at 9:52
  • 1
    @AaronLewis Note that this is the system default. I don't think there's any standard way of obtaining the user's favorite X terminal emulator. – Gilles 'SO- stop being evil' Feb 24 '12 at 19:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.