Ejecuto muchos programas en Ubuntu desde la terminal, pero me gustaría poder continuar usando la terminal después de tener abierto un programa. ¿Cómo puedo poner los programas en segundo plano para no tener que abrir otra ventana?
Ejecuto muchos programas en Ubuntu desde la terminal, pero me gustaría poder continuar usando la terminal después de tener abierto un programa. ¿Cómo puedo poner los programas en segundo plano para no tener que abrir otra ventana?
Respuestas:
Hay diferentes formas de ejecutar un programa de terminal y continuar usando el terminal:
&
el comando que ejecuta. Tenga en cuenta que no verá la salida de texto al terminal, como mensajes de error.bg
. Esto tiene el mismo efecto que corrercommand &
nohup command &
y luego presionar enter. (Gracias a ccpizza , vea los comentarios a continuación).Sin embargo, presionar Alt, F2y luego ejecutar su comando desde la GUI generalmente se considera la mejor práctica, ¡no hay terminal en absoluto!
Tenga en cuenta que al usar &
(no nohup
), cerrar el terminal aún terminará la aplicación a menos que se ejecute disown
después .
EDITAR: Parece que el uso nohup
a veces dejará pequeños excrementos en su carpeta de inicio. Lo que normalmente se habría registrado en el terminal aparentemente se guarda en un archivo en ~ /.
~~
Una forma sencilla de ejecutar un programa en segundo plano es program-name & disown
, que lo llevará a un terminal que puede cerrarse sin matar el proceso.
program-name & disown
es una buena solución
Puede utilizar setsid
para ejecutar el programa en una nueva sesión además de &>/dev/null
para que no reciba ningún mensaje de registro.
Entonces sería como
setsid program-name &>/dev/null
Con el screen
comando, puede abrir varias sesiones de terminal con una sola ventana y tocar
apt-get install screen (On Debian based Systems)
yum install screen (On RedHat based Systems)
screen
(iniciar nueva pantalla)
[Your command]
Ctrl+A d
para salir de la pantalla ... y así sucesivamente
Puede ejecutarlo en una terminal virtual como tmux
(o screen
escuché que ya no se mantiene)
# This ataches your terminal to a virtual terminal
tmux
run_your_command
# This detaches your virtual terminal (previous command can be running)
CTRL-b d
run_other_commands # on your terminal
# re-attach the virtual terminal to see the status of run_your_command
tmux a
tmux
puede hacer mucho más, como:
https://www.hamvocke.com/blog/a-quick-and-easy-guide-to-tmux/
nohup firefox&
.