¿Cómo mantener la aplicación ejecutándose después de cerrar la terminal?

17

Soy nuevo en Ubuntu. He usado Sublime Text. Me di cuenta de que después de abrir Sublime Text desde la Terminal, si cierro la terminal, la aplicación sigue ejecutándose. Lo mismo no es cierto para otras aplicaciones como geany.

Después de abrir la aplicación desde la terminal, cuando la cierro, la aplicación también se cierra. Lo he intentado &exitcomo geany &exit. Pero esto no es lo que estoy buscando.

¿Cómo puedo seguir geanycorriendo incluso después de cerrarlo?

eddard.stark
fuente
1
Puedes ver aquí unix.stackexchange.com/questions/4004/…
Abdelhak Bougouffa
nohup geany & disown me funciona mejor
eddard.stark

Respuestas:

25

Desde una ventana de terminal, escriba

nohup geany > /dev/null

o

nohup geany >/dev/null &

nohuppermite que la aplicación se ejecute y sea inmune a los bloqueos, por lo que cerrar la ventana del terminal no tendría ningún efecto en la aplicación que se ejecuta. Agregar el >/dev/nullcomando evita la creación de un nohup.outen cada directorio desde el que se ejecuta la aplicación.

Desde la página del manual:

NAME
       nohup - run a command immune to hangups, with output to a non-tty

SYNOPSIS
       nohup COMMAND [ARG]...
       nohup OPTION
Terrance
fuente
@ eddard.stark ¡De nada! =)
Terrance
2
Quizás nohup geany > /dev/nullo nohup geany > /dev/null &, para evitar la creación de un nohup.outarchivo en el directorio de trabajo actual cada vez que se ejecuta el comando
kos
No hay problema, ya votó (¡por cierto, en general, siéntase libre de no molestarse en acreditarme en la publicación por tan poca mejora!)
kos
1
@kos OK, lo eliminé. Pero gracias de nuevo por el recordatorio. Hay veces que olvido algunas de las cosas simples para detener la creación de salida de registro. Realmente espero buenas sugerencias de otros. =)
Terrance
1
A menudo, el resultado de la ejecución es útil / importante para monitorear el estado o hacer un seguimiento de lo que se hizo. En este caso, querrás usar algo como nohup run1_cmd.sh > run1.out .
Steven C. Howell
10

Como alternativa a nohupusted, podría usar el shell incorporado disown. disownelimina trabajos de la lista de trabajos y, cuando existe el shell, SIGHUPno se envía a ese proceso.

geany &
disown
exit
mniip
fuente
2

Puede usar exec geany & exit(tenga en cuenta el exec y el ampersand) si no necesita root y pkexec geany & exitsi necesita privilegios de root.

Erkin Alp Güney
fuente