Информпортал «Интернет»

  • Создание и раскрутка сайта
  • Программирование
  • Как заработать на сайте
  • Компьютерные шутки

  • CRONTAB. Документ справочника MAN

    Версия: Solaris 2.5.1 от 1 февраля 1995

    СИНТАКСИС

    crontab [файл]

    crontab [-elr] [пользователь]

    ОПИСАНИЕ

    Команда crontab обеспечивает для пользователя доступ к услугам демона cron путем копирования, создания, распечатки и удаления crontab-файлов (т. е. файлов, содержащих задания для демона cron). При вызове без ключей crontab копирует указанный в командной строке файл (или стандартный ввод, если файл не указан) в специальный каталог /var/spool/cron/crontabs, где хранятся задания всех пользователей для демона cron. После этого crontab посылает сигнал демону, чтобы он принял новые задания к исполнению. Пользователь не имеет и не должен иметь непосредственного доступа к crontab-файлам в /var/spool/cron/crontabs; его интерфейс к этим файлам — команда crontab.

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

    Файлы cron.allow и cron.deny содержат имена пользователей, по одному имени в строке.

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

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

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

    Строка, начинающаяся с символа #, является комментарием. Файл не должен содержать пустых строк.

    Shell запускается демоном cron из домашнего каталога пользователя, запланировавшего действие, при этом нулевой аргумент командной строки (argc[0], $0) равен "sh". Если пользователь хочет, чтобы выполнялся его профайл, он должен явно указать это в crontab-файле. Cron поддерживает стандартное окружение для каждого запускаемого shell’а, определяя переменные HOME, LOGNAME, TZ также, как они определяются при работе пользователя, а также переменные.

    Значение пременной PATH, устанавливаемой демоном cron, можно явно указать в /etc/default/cron.

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

    ОПЦИИ (КЛЮЧИ)

    -e — редактирует копию существующего crontab-файла данного пользователя или создает новый файл для редактирования, если crontab-файл данного пользователя не существует. После выхода из текстового редактора созданный/отредактированный файл устанавливается как crontab-файл пользователя вместо старого файла. Если указано имя пользователя, редактируется crontab-файл этого пользователя (доступно только суперпользователю). Переменная окружения EDITOR определяет, какой текстовый редактор вызывается при указании опции -e. По умолчанию вызывается ed.

    -l — распечатывает в стандартный вывод содержимое crontab-файла данного пользователя.

    -r — удаляет crontab-файл пользователя из каталога, в котором хранятся задания для cron.

    Только суперпользователь может указывать дополнительно к ключам -r или -l имя пользователя для того, чтобы удалять или просматривать crontab-файлы указанного пользователя.

    ПРИМЕРЫ

    1. Очищать домашний каталог от файлов core каждый рабочий день в 3:15 утра: "15 3 * * 1—5 find $HOME -name core 2>/dev/null xargs rm -f".
    2. Отправлять по почте поздравление ежегодно в полдень 14-го февраля: "0 12 14 2 * mailx john%Happy Birthday!%Time for lunch".
    3. Ниже приведенный пример, использующий два типа указания дня (день месяца и день недели): "0 0 1,15 * 1" будет запускать команду в полночь на первое и 15-е число каждого месяца, а также в полночь на каждый понедельник. Чтобы указывать дни только одним способом, в поле, отвечающем за второй способ, должен стоять символ *, например: "0 0 * * 1" будет запускать команду только по понедельникам.

    ФАЙЛЫ

    /usr/spool/cron/crontabs — Каталог, в котором размещены crontab-файлы пользователей (пользователи НЕ работают непосредственно с файлами этого каталога).

    /var/cron/log — log-файл выполнения демоном cron заданий всех пользователей (доступен для чтения только суперпольззователю).

    /etc/cron.d/cron.allow — Список пользователей, которым разрешено выполнять команду crontab.

    /etc/cron.d/cron.deny — Список пользователей, которым запрещено выполнять команду crontab.

    /etc/default/cron — Установки для cron: CRONLOG=YES — включить регистрацию действий cron в /var/cron/log. PATH=… — установить переменную PATH для выполнения заданий пользователей.

    ПРЕДОСТЕРЕЖЕНИЯ

    Если Вы нечаянно ввели команду crontab без аргументов, то не пытайтесь выйти, нажав CTRL+D, так как это опустошит Ваш crontab-файл. Вместо CTRL+D используйте клавишу прерывания (CTRL-C).

    Если суперпользователь изменяет crontab-файл другого пользователя, результат может получится непредсказуемым, если суперпользователь не выполнил предварительно команду su для перехода в сеанс нужного пользователя.

    Написано на основе документа CitForum, переработанного и дополненного.

    Максим Мамаев, дополнительный перевод и редактирование, 1998

    http://athena.vvsu.ru/docs/unix/man/crontab.html

    18 октября 2006

    помощь в выборе товаров
    Сайт является кладезью информации, которая поможет любому покупателю сделать правельный выбор.

    народные средства лечения
    Большая инцеклопедия, в которой собраны сотни рецептов народной медицины и траволечения.

    обман и мошенничество
    Сайт про обман, аферы иnbsp;мошенничества в сети и мире.

    игры для кпк
    Сайт о карманных компьютерах — КПК или PDA, как их чаще называют. В архиве сайта множество программ и игр для КПК, как для Pocket PC, так и для Palm.