как объединить день недели и день месяца в crontab?

Выполните следующие команды из-под своей учетной записи:

su
chkconfig mysqld on

Затем можно перезапустить сервис сервисом mysqld перезапуск. Можно проверить, под каким пользователем это работает путем издания

ps aux | grep mysqld
1
задан 7 December 2010 в 02:06
2 ответа

Иметь script_week проверьте, работает ли это на дне 1 из месяца. Если это, то имейте его выход прежде, чем сделать любую реальную работу. Например, в сценарии удара, такая проверка могла бы быть похожей на это:

if [ `/bin/date +%d` = "01" ]; then exit 0; fi

Если Вы предпочитаете, Вы могли бы уехать script_week неизмененный и вместо этого помещенный подобная проверка в crontab запись для script_week, что-то вроде этого:

59 12 * * 1 user if [ `/bin/date +\%d` != "01" ]; then script_week; fi
7
ответ дан 3 December 2019 в 16:19

Если это - длительное задание, Вы могли бы также полагать, что наличие сценария использует файл блокировки так, чтобы только один экземпляр его работал за один раз. Затем Вам можно было перечислить его и в записях крона и полагаться на него обнаруживающий, когда каждый уже работает.

Это может также быть полезно, если это - Очень длинное рабочее задание. Иногда я натыкался на задания крона, которые обычно не берут очень долго, но если система работает под высокими журналами обработки загрузки или большое задание, она могла бы занять больше времени, чем ожидалось. Затем, если несколько из этих заданий запускаются одновременно, они могут запустить укладку и в конечном счете принести машину к, он - колени.

Вряд ли для задания, которое работает один раз в неделю, но это - хорошая привычка войти - препятствование тому, чтобы задания сложили, и это сделало бы двойную обязанность препятствовать тому, чтобы задание было выполнено от обоих crontab записи.

3
ответ дан 3 December 2019 в 16:19

Теги

Похожие вопросы