- Ниже указан формат файла crontab
------------- минуты (0 - 59)
| ----------- час (0 - 23)
| | --------- день месяца (1 - 31)
| | | ------- месяц (1 - 12)
| | | | ----- день недели (0 - 6) (Воскресенье=0)
| | | | |
* * * * * команда_для_запуска
- Запятая (',') определяет список значений, например: "1,3,4,7,8"
- Тире ('-') определяет диапазон значений, например: "1-6", что эквивалентно "1,2,3,4,5,6"
- Звездочка ('*') определяет все допустимые значения поля. Например, звездочка в поле часы будет эквивалентно значению 'каждый час'..
- Слэш ('/') может использоваться для пропуска данного числа значений. Например, "*/3" в поле часы эквивалентно строке "0,3,6,9,12,15,18,21"; "*" означает 'ежечасно', но "/3" устанавливает использовать только первое, четвертое, седьмое...и так далее значение определенное "*".
crontab -l
crontab -e
- Задания cron запускаются для каждого пользователя, однако, если вы хотите запускать команды cron от имени пользователя root используйте
sudo crontab -e
- Если результатом выполнения команды из crontab являются какие-то выходные данные, то демон cron обычно высылает эти данные пользователю по email. Что бы отключить данную функцию для любой специфичной команды, вы можете перенаправить вывод на /dev/null. Для отключения пересылки сообщений по email из crontab добавьте в строку вызова команды
> /dev/null 2>&1
- Это позволит перенаправить вывод на устройство /dev/null, однако, если возникнут ошибки, то вы их тоже не увидите:
[править] Примеры заданий cron
- для выполнения команды (ls) вызываемой ежедневно в 4:30pm, добавьте следующую строку в cron:
30 16 * * * ls
- для выполнения команды (ls) вызываемой каждые 5 минут, добавьте следующую строку в cron:
*/5 * * * * ls
- для выполнения команды (ls) вызываемой каждую пятницу в 6:57am, добавьте следующую строку в cron:
57 6 * * 5 ls
- для выполнения команды (ls) вызываемой один раз в месяц в 2:38pm, добавьте следующую строку в cron:
38 14 1 * * ls
- для выполнения команды (echo "string") вызываемой по будням в 12:00pm, добавьте следующую строку в cron:
0 12 * * 1-5 echo "lunchtime"
- для выполнения команды (echo "string") вызываемой каждый раз 25-го декабря в 12:00am, добавьте следующую строку в cron:
0 0 25 12 * echo "CHRISTMAS TIME IS HERE!!!"
спасибо
ОтветитьУдалитьспасибо! самый лучший мануал по кронтабу который я когда либо встречал на просторах интернета
ОтветитьУдалитьспасибо
ОтветитьУдалитьthx!
ОтветитьУдалитьспасибо!
ОтветитьУдалитьПросто супер!
ОтветитьУдалитьСпасибо!!!
ОтветитьУдалитьнет главного. как запустить шелл скрипт. и где он по умолчанию располагается. моя задача с логикой. по этому важно вынести в отдельный скрипт. думаю у многих такие задачи встречаются.
ОтветитьУдалитьнапример так:
Удалить#*/1 * * * * /bin/sh /home/custom_folder/cron.sh
воскресенье - "о" или "1"?
ОтветитьУдалитьВс 0, пн 1, вт 2, ср 3, чт 4, пт 5, сб 6.
Удалить