Это плохо иметь длинный список в моем crontab?

Я занимаюсь созданием приложения для отображения сообщений на экране с желаемыми интервалами.

Я хочу использовать cron для достижения этого, и я рассматриваю свои варианты. Самым наивным подходом было бы напечатать команды непосредственно в crontab. Это плохая идея?

2 ответа

Нет, неплохо иметь длинный список crontab, cron выполняется за минуты в кратчайшие сроки, поэтому не в режиме реального времени, но вы также можете получать уведомления в режиме реального времени (см. ниже).


В качестве альтернативы вы также можете использовать cron запустить 1 скрипт, который выполняет все ваши разные crontab линии, которые в противном случае вы бы включили в ваш crontab где этот файл выполняется или проверяет все различные параметры, которые вы хотите получать уведомления. Это также было бы проще поддерживать: если вам нужно новое задание, вы добавляете его в свой скрипт и можете проверить, не испорчено ли это задание в самом скрипте (cron может быть довольно разборчивым).


Могу ли я также предложить вам взглянуть на создание upstart работа. Это было бы больше в стиле Ubuntu. Таким образом, вы создаете daemon или же service что вы можете начать и остановить из командной строки. Плюс это сделало бы ваши уведомления в режиме реального времени, а не периодически.

Upstart - это основанная на событиях замена для демона / sbin / init, который обрабатывает запуск задач и служб во время загрузки, останавливает их при завершении работы и контролирует их во время работы системы.

# Файл выгрузки Ubuntu по адресу /etc/init/yourservice.conf

предстартовый скрипт
    mkdir -p /var/log/yourcompany/
конец сценария

респаун
предел возрождения 15 5

начать на уровне выполнения [2345]
остановка на уровне выполнения [06]

скрипт
su - youruser -c "NODE_ENV=test exec /var/www/yourcompany/yourproject/yourservice.js 2>&1" >>  /var/log/yourcompany/yourservice.log
конец сценария

Использование gnome-schedule

введите описание изображения здесь

Это интуитивно понятно, и легче запускать графические приложения из cron требует дополнительной работы) - просто не забудьте пометить команду как приложение X в конфигурации задачи.

Домашняя страница: http://gnome-schedule.sourceforge.net/

Пример использования: http://www.liberiangeek.net/2011/04/schedule-a-job-to-automatically-put-ubuntu-into-sleep-or-hibernation-mode/

Другие вопросы по тегам