LINUX.ORG.RU

Аналог того, что выше - while :; do program; done

ipc
()

for ((;;)); do program; done

anonymous
()

Правильнее всего вот так:
(defun forever ()
(progn
(run-shell-command "твоя программа")
(forever)))
(forever)

anonymous
()
Ответ на: комментарий от dilmah

>yes | xargs -n1 proga
ls: cannot access y: No such file or directory
ls: cannot access y: No such file or directory
ls: cannot access y: No such file or directory
ls: cannot access y: No such file or directory
ls: cannot access y: No such file or directory
ls: cannot access y: No such file or directory
ls: cannot access y: No such file or directory
ls: cannot access y: No such file or directory
ls: cannot access y: No such file or directory
ls: cannot access y: No such file or directory
ls: cannot access y: No such file or directory
ls: cannot access y: No such file or directory
ls: cannot access y: No such file or directory
ls: cannot access y: No such file or directory

Не слушай советчиков, с defun получается оптимальнее.

anonymous
()
Ответ на: комментарий от anonymous

> ls: cannot access y: No such file or directory

но она же запускается!

> ls: cannot access y: No such file or directory
> ls: cannot access y: No such file or directory

и даже перезапускается:)

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

>Или r.sh
Здесь еще нужно разрешить выполнение
$ chmod +x r.sh

anonymous
()
Ответ на: комментарий от dimon555

Например, M/Monit.

M/Monit is a system for automatic management and monitoring of Information Technology Systems. M/Monit can monitor and manage distributed computer systems, conduct automatic maintenance and repair and execute meaningful causal actions in error situations.

anonymous
()
Ответ на: комментарий от dimon555

> правильно поручить это специальному демон

Человеку-Шедулеру.

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

>но она же запускается!
Зато в моем решении на один вызов внешней программы меньше.

anonymous
()
Ответ на: комментарий от ananas

> правильно поручить это специальному демону > Например, M/Monit.

А какие еще есть демоны которым можно это поручить ?

Oaks
() автор топика

> Каким образом в Linux правильно реализовать перезапуск программы после вылета по ошибке ?

Может стоит начать с разработки архитектуры программы, дабы она не вылетала по ошибке.

Что тут вообще обсуждают, не понимаю. Ладно бы речь была о перезапуске программы после ее обновления...

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

А какие еще есть демоны которым можно это поручить ?

init Решение привёл товарищ ananas.

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

>Может стоит начать с разработки архитектуры программы, дабы она не вылетала по ошибке.
Перезапуск при вылете используют даже для проверенных программ вроде Апача, если уж на то пошло. Другими словами, если нужно, чтобы программа гарантированно работала. А дойдет дело до этого или нет, не так важно.

ipc
()
Ответ на: комментарий от ipc

> >Может стоит начать с разработки архитектуры программы, дабы она не вылетала по ошибке.
> Перезапуск при вылете используют даже для проверенных программ вроде Апача, если уж на то пошло. Другими словами, если нужно, чтобы программа гарантированно работала. А дойдет дело до этого или нет, не так важно.


Да это все костыли ;)

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