ryg

cron для Mac OS X

Синтаксис:

  cron [-s] [-o] [-x debugflag[,...]]

Описание:

 В случае если есть содержимое в /etc/crontab или файлы в папке /usr/lib/cron/tabs с помощью launchd будет запущена утилита cron, она не требует ручного запуска. Подробнее в файле настроек /System/Library/LaunchDaemons/com.vix.cron.plist 
Запущенная утилита проверяет папку /usr/lib/cron/tabs на наличие файлов с именем пользователя как оно описано в /etc/passwd  и в случае нахождения такого файла загружает его в память, также cron проверяет /etc/crontab (там другой формат).
 
Затем, каждую минуту утилита проверяет загруженные таблицы, проверяет каждую команду на необходимость быть запущенной в данный момент времени. После запуска команды любой вывод отправляется собственнику crontab (или указанному в переменной окружения MAILTO пользователю, если таковой там указан)
 
Вдобавок, каждую минуту cron проверяет время изменения файлов crontab (таблиц настроек) и в случае обнаружения изменений обрабатывает эти файлы, изменяя список команд для автоматического исполнения. Потому cron не нуждается в перезапуске, в случае если вы изменили список плановых заданий.
Замечание: утилита crontab обновляет время последнего редактирования папки, где находятся измененные файлы плана запуска приложений и команд.

Параметры:

-s 
Включить обработку ситуаций, связанную с изменением часового пояса и переходов на летнее/зимнее время.
 
Когда запланированное время исполнения задачи приходится на "пропадающее" время, например в момент перехода с зимнего на летнее время, когда выпадает один час или при смещении часового пояса на восток обработка команд происходит одним из двух способов:
 
В первом случае, когда команда по графику выполняется каждый час. В этом случае задания исчезают или другими словами если задача была выполнена за час, а потом произошел переход, то следующая задача будет выполнена по новому времени. Это работает всегда независимо от смещения времени на восток или запад.
 
Второй случай, когда задача исполняется реже, чем один раз в час. Они выполняются только один раз, не пропускаются и не выполняются дважды (если конечно не перезапустить cron или не изменить таблицу задач с помощью crontab в данный временной интервал). Если необходимый интервал исчезает (смещение на восток), то задача будет выполнена по "старому" времени.
-o  отменяет обработку "смещения" времени, для совместимости со старыми версиями. Параметр по умолчанию. Если указаны оба параметра -o и -s то последующий отменяет предыдущий.
-x debugflag[...]
выводить отладочную информацию в стандартный вывод. Могут быть определены один или несколько отладочных признаков (разделяются запятыми)
 
 bit  - в настоящее время не используется
 ext  - выводить информацию по другим флагам максимально подробно
 load - выводить информацию, когда загружаются файлы crontab
 misc - сообщать о разовых событиях
 pars - выводить информацию о разборе (парсинге) таблиц - индивидуальных задач пользователя
 proc - подробная информация о состоянии процесса, включая его потомков
 sch -  информировать об итерации алгоритмов планирования
 test - трассировка выполнения, но при этом задачи не выполняются.
 
 Используемые файлы
 /usr/lib/cron/tabs -папка, где хранятся таблицы графиков выполнения команд

 Смежные команды:

launchctl - утилита управления launchd
crontab - утилита редактирования файла-расписания запуска 
launchd.plist
launchd - основной менеджер управления запуском программ в Mac OS X
open   - открыть файл, папку или страницу по URL