CRONTAB(1)

НАЗВАНИЕ
crontab - описание регулярных действий

СИНТАКСИС


 crontab  [файл]

 crontab  -r

 crontab  -l

ОПИСАНИЕ
Команда crontab в первом из приведенных вариантов копирует указанный файл, или стандартный ввод, если файл не задан, в каталог, хранящий регулярные действия всех пользователей. Смысл опций двух других вариантов команды crontab таков:

-r
Удалить регулярные действия текущего пользователя из этого каталога.
-l
Выдать на стандартный вывод файл с регулярными действиями текущего пользователя.

Пользователю разрешено выполнять команду crontab только при условии, что его имя встречается в файле /usr/lib/cron/cron.allow. Если этого файла не существует, то проверяется файл /usr/lib/cron/cron.deny для того чтобы узнать, не запрещен ли пользователю доступ к crontab. Если оба файла отсутствуют, то только суперпользователю разрешено планировать регулярные действия. Если cron.allow не существует, cron.deny существует, но не содержит имен, то использовать команду crontab разрешено всем. Файлы cron.allow и cron.deny содержат по одному имени в строке.

Файл, описывающий регулярные действия, состоит из строк, каждая из которых содержит 6 полей. Эти поля разделены пробелами или символами табуляции. Первые 5 полей представляют собой шаблоны, специфицирующие следующие целые числа:


   минуты (0-59),

   часы (0-23),

   день месяца (1-31),

   месяц в году (1-12),

   день недели (0-6 где 0=воскресенье).

Каждый из этих шаблонов может быть или символом *, который обозначает все корректные значения, или списком, элементы которого разделены запятыми. Каждый элемент должен быть либо числом, либо двумя числами, разделенными символом - (таким способом задается интервал). Заметим, что день может быть указан двумя полями (день месяца и день недели). Если в обоих этих полях указаны списки, то считаются заданными те дни, которые заданы или как день месяца, или как день недели. Например, если первые 5 полей содержат 0 0 1,15 * 1, то действие производится 1 и 15 числа каждого месяца и, кроме того, каждый понедельник. Чтобы указывать день каким-либо одним способом, в другом поле необходимо указать * (к примеру, 0 0 * * 1 приводит к выполнению действия только по понедельникам).

Остальная часть строки в файле регулярных действий представляет собой цепочку символов, которая выполняется shell'ом в указанное время. Символы процента в этой цепочке (кроме экранированных \) переводятся в символы перевода строки. Только первая получившаяся строка (до символа % или до конца строки) выполняется shell'ом. Остальные получившиеся строки могут быть обработаны при выполнении действия как стандартный ввод.

Shell запускается из основного каталога пользователя, запланировавшего действие, при этом нулевой аргумент равен sh. Если пользователь хочет, чтобы выполнялся его профайл, он должен явно указать это в файле регулярных действий. Cron поддерживает подразумеваемое окружение для каждого shell'а, определяя параметры HOME, LOGNAME, SHELL (/bin/sh), и PATH (:/bin:/usr/bin:/usr/lbin).

Если стандартный вывод и стандартный протокол не переназначены, то весь вывод от регулярных действий пересылается пользователю по почте.

ФАЙЛЫ

/usr/lib/cron
Основной каталог команд, связанных со временем.
/usr/spool/cron/crontabs
Каталог файлов регулярных действий.
/usr/lib/cron/log
Учетная информация.
/usr/lib/cron/cron.allow
Список пользователей, которым разрешено выполнять команду crontab.
/usr/lib/cron/cron.deny
Список пользователей, которым запрещено выполнять команду crontab.

СМ. ТАКЖЕ
sh(1).
cron(1M) в Справочнике администратора.

ПРЕДОСТЕРЕЖЕНИЯ
Если Вы нечаянно ввели команду crontab без аргументов, то не пытайтесь выйти, нажав CTRL+D, так как это опустошит Ваш файл регулярных действий. Вместо CTRL+D используйте клавишу прерывания.