Как сохранить приложение запущенным после закрытия терминала?

Как сохранить приложение запущенным после закрытия терминала?

Я новичок в Ubuntu. Я использовал Sublime Text. Я понял, что после того, как я открываю Sublime Text из терминала, если я закрываю терминал, приложение продолжает работать. Это не относится к другим приложениям, таким как geany.

После того, как я открываю приложение из терминала, когда я закрываю терминал, приложение также закрывается. Я пробовал &exitкак geany &exit. Но это не то, что я ищу.

Как мне продолжить geanyработу даже после закрытия?

решение1

РЕДАКТИРОВАТЬ:Это может работать только для определенных типов терминалов. Лучше всего запустить еще одну команду disownпосле запуска команд, как показано ниже, чтобы приложения были отсоединены от окна терминала.


В окне терминала введите:

nohup geany > /dev/null
disown

или

nohup geany >/dev/null &
disown

nohupпозволяет приложению работать и быть невосприимчивым к зависаниям, поэтому закрытие окна терминала не повлияет на запущенное приложение. Добавление >/dev/nullк команде предотвращает создание nohup.outв каждом каталоге, из которого запускается приложение.

Из страницы руководства:

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

SYNOPSIS
       nohup COMMAND [ARG]...
       nohup OPTION

И

$ disown --help
disown: disown [-h] [-ar] [jobspec ... | pid ...]
    Remove jobs from current shell.
    
    Removes each JOBSPEC argument from the table of active jobs.  Without
    any JOBSPECs, the shell uses its notion of the current job.
    
    Options:
      -a    remove all jobs if JOBSPEC is not supplied
      -h    mark each JOBSPEC so that SIGHUP is not sent to the job if the
            shell receives a SIGHUP
      -r    remove only running jobs
    
    Exit Status:
    Returns success unless an invalid option or JOBSPEC is given.

решение2

В качестве альтернативы nohupможно использовать встроенную функцию оболочки disown. disownОна удаляет задания из списка заданий, а если оболочка существует, то SIGHUPне отправляется в этот процесс.

geany &
disown
exit

решение3

Вы можете использовать exec geany & exit(обратите внимание на exec и амперсанд), если вам не нужен root, pkexec geany & exitно нужны привилегии root.

Связанный контент