LINUX.ORG.RU

в FAQ


0

0
13.19 Как запустить программу в фоне, без привязки к терминалу?

также можно "отвязать" от терминала программу, уже запущенную в фоновом режиме в bash, командой disown.

Пример:

bash-2.05b$ beep-media-player http://64.236.34.67:80/stream/2007 &
bash-2.05b$ disown beep-media-player
anonymous
Ответ на: комментарий от anonymous
Если запустить прогу способом 'program &', то при закрывании окна терминала убивается program, а при выходе по Ctrl+D она продолжает работать.
mikhail
()
Ответ на: комментарий от mikhail
> при закрывании окна терминала убивается program, а при выходе по Ctrl+D она продолжает работать.

Неправильно ты понимаешь... ;)

ivlad ★★★★★
()
Ответ на: комментарий от mikhail

студенту в качестве упражнения

> Ну у меня именно так почему-то

вот когда поймешь, тогда явишься и доложишь что и почему.
anonymous
()
Ответ на: комментарий от mikhail
> Ну у меня именно так почему-то. :) Закрываю bash с помощью крестика/Alt+F4 в KDE.

Читай логи на консоли X`ов.

anonymous
()
Ок

А назад ее как вернуть?

P.S. Смотрю в сторону screen

jackill ★★★★★
()
Ответ на: комментарий от Sun-ch
> А чё в ляпиксе команды nohup нет?

с каких пор?

mator ★★★★★
()
Ответ на: комментарий от jackill
Странно, а у меня работали конструкции типа

nohup make all&

^D

Весь stdout + stderr в файле nohup.out в $HOME


Sun-ch
()
Ответ на: комментарий от Pi
ну и nohup beep-media-player & тож пашет есесено
Pi ★★★★★
()
Ответ на: комментарий от mikhail
>Закрываю bash с помощью крестика

Майкл - это 5.

Sun-ch
()
Господа, если я не ошибаюсь, то конструкция типа
(command &)
дает эффект аналогичный nohup но без вывода в nohup.out?
octy ★★
()
Ответ на: комментарий от octy
ИМХО она просто запускает субшелл для выполнения команды.

nohup гарантирует что процесс созданный с ее помощью проигнорирует

sighup (например при смерти родителя) и будет исполнятся дальше.
Sun-ch
()
Ответ на: комментарий от Sun-ch
Да, я проверил, я был неправ. Эффект неубивания задачи при выходе (и используемый мной) достигается в этом случае видимо засчет того, что запускается неинтерактивный shell, а согласно man bash SIGHUP посылается при выходе из _интерактивного_ shell'a. Если же послать SIGHUP вручную, задача убивается, (а запущенная с nohup - нет).
Кстати, этим может ибъясняться и "ненормальное" поведение терминала Михаила.

В FAQ можно добавить, что если nohup.out раздражает, то можно запускать как
nohup command_name &>/dev/null &
octy ★★
()
Ответ на: комментарий от jackill
> Вот оно, fg. Япона мать, всю неделю вспоминал!!!

мама. и эти люди запрещают анонимусам ковыряться в носу. ;)

ivlad ★★★★★
()
Ответ на: комментарий от ivlad
позор! всем модераторам в срочном порядке пересдать нормативы боевой подготовки. линуксоид должен уметь собрать и разобрать ядро с завязанными глазами за 60 секунд!
anonymous
()
Ответ на: комментарий от ivlad
>мама. и эти люди запрещают анонимусам ковыряться в носу. ;)

я использую screen... ;)

jackill ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.