I'm developing a program that has a button. When pressed, I want to open a terminal that runs:
sudo apt-get update
I'm using:
os.system("gnome-terminal -e 'sudo apt-get update'")
This works fine. The only problem is that when the update is finished, the terminal closes. What can I do to leave the terminal open?
-
See this post: stackoverflow.com/questions/3512055/…rodion– rodion2011年09月27日 19:54:03 +00:00Commented Sep 27, 2011 at 19:54
4 Answers 4
You could do this:
os.system("gnome-terminal -e 'bash -c \"sudo apt-get update; exec bash\"'")
6 Comments
There are a few choices:
- add
; read -p "Hit ENTER to exit"to the end of the command line. - add
; sleep 10to the end of the command line to wait a bit, then exit. Configure gnome terminal:
Go to the "Edit" menu and click "Current Profile". Click on the "Title and Command" tab. In there, there is a setting called "When command exits". Change it to "hold the terminal open". You could also create a new profile.
Comments
You can remove the -e:
os.system("gnome-terminal 'sudo apt-get update'")
1 Comment
import os
os.system("Your command") You can also pass custom command as custom variable For example:
cmd_to_run = "ls -lat"
os.system(cmd_to_run)