LINUX.ORG.RU

Как правильно пускать процессы в фон?


0

0

Нужно чтобы всегда выполнялся вот такой скрипт:

whie [ true ] do;
some action
sleep 0.5
done

Проблема в том, что у процесса sleep 0.5 постоянно меняется PID. Это нормально? Как вообще правльно делать и запускать подобные фоновые процессы?

Ответ на: комментарий от geek

> nohup

Или я чё-та недогоняю, или или...

nohup - это же вроде для того, чтобы процесс не завершался, если ты с консоли, на которой запущен скрипт делаешь logout. А у меня совсем другое.....

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

>whie [ true ] do;
>some action
>sleep 0.5
>done

Не понятно чего тебе надо. То-ли inittab/respawn,
то-ли запуск в цикле (если "some action" краткосрочное действие)?
А где здесь запуск в фоне, вообще не понятно.

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

>nohup - это же вроде для того, чтобы процесс не завершался, если ты с консоли, на которой запущен скрипт делаешь logout

так объяснил бы толком что тебе надо.

geek ★★★
()

>у процесса sleep 0.5 постоянно меняется PID Естественно меняется, ты же каждый раз в цикле запускаешь новый процесс sleep.

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

В этом скрипте у меня постоянно происходит конвертация кодировки файла. Мне нужно чтобы этот процесс выполнялся постоянно. Постоянно всмысле пока я залогинен, т.е. никакие nohup'ы мне не нужны.

Scriman
() автор топика
Ответ на: комментарий от mezantrop

> Естественно меняется, ты же каждый раз в цикле запускаешь новый процесс sleep.

Т.е. это нормально? Я просто раньше подобного не наблюдал, чтобы у меня какой-то процесс так шустро перебирал PID'ы...

Я поэтому и спрашивал, можно ли как-то сделать, чтобы этот процесс (читай - скрипт) всегда висел под одинм PID'ом.

Хотя щас сам скрипт и висит на одном PID'е, только PID sleep'a увеличивается....

Scriman
() автор топика
Ответ на: комментарий от paranormal

> Тебе надо чтобы под одним PID выполнялась комада которая в цикле или сам сценарий ???

Команда которая в цикле, т.е. "sleep 0.5". Просто имхо это не есть гуд, если она у меня в течении дня будет PID'ы дохрена накручивать...

Scriman
() автор топика
Ответ на: комментарий от Metallic

> pid не кончаются ;-) почитай про screen и подобные вещи, может понравится.

В то что PID'ы не кончаюца я верю... :) А вот причём тут screen...?

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

Если команда это отдельный процесс, то выполнение этого процесса в цикле будет неизбежно приводить к возрастанию PID. Ваш sleep - это процесс. Что тут удивительного?

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