TransWikia.com

How to keep Lxterminal open after running .desktop shortcut

Ask Ubuntu Asked by Ebram Shehata on December 30, 2020

I made a .desktop file to compile and execute a c++ file but the terminal (lxterminal – lubuntu) is not holding after running the file.

Although I did mark “Keep terminal window open after command execution.” on the .desktop file properties !

I am using Lubuntu 16.04.1 LXDE desktop environment.

3 Answers

You can use this

lxterminal -e bash -c 'top; bash'

Just replace "top" with your command.

Answered by Kris on December 30, 2020

I don't know if this is optimal for you use case, but you can put yourCommand; read -n 1 -s in the Exec line of your .desktop file, causing the terminal to wait for one character input (silently, not echoing it back to stdout).

You should end with something like this:

Exec=lxterminal -e "/path/to/yourCommand; read -n 1 -s"

Also can use && or || according to you app exit value/code, waiting only if execution was successful, for example:

Exec=lxterminal -e "/path/to/yourCommand && read -n 1 -s"

Hope it helps.

Answered by dgonzalez on December 30, 2020

You can run your command(s) via a shellscript. (Maybe you do that already.) And at the end of the shellscript you add a line, for example like this:

read -p "Press Enter to close this window"

Then you can scroll the window and check the output from your command(s), and then press Enter to get rid of the terminal window.


I don't know why the first method did not work. Maybe your script or some program called by it is sending a signal that finishes the script at once (without reaching the final statement). You could try to fix that, but maybe it is easier to run in an xterm window (tweaked to look better and with the -hold option.

Please compare how these two command lines work:

xterm -e cat ~/.bashrc
xterm -hold -e cat ~/.bashrc

You can tweak the xterm window to look better, for example like this

xterm -title "Click x in the top right corner to close me" -fa default -fs 10 -bg '#2b2c2b' -fg '#f0f0f0' -sb -rightbar -hold -e cat ~/.bashrc

Put the name of your script after -e in the xterm command line, or start the xterm in interactive mode (with the hold feature), and start your script in xterm.

Answered by sudodus on December 30, 2020

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP