Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: Крон выполняющий скрипт раз в двое суток
цитата
11/02/15 в 13:04
 S_Flash
Подскажите настройки звёздочек, чтоб крон выполнялся примерно раз в два дня. Совершенно не важна точность времени выполнения. Т.е. если суточное время выполнения "поплывёт", то это будет нормально и может даже желательно.

И заодно вопрос, как сделать выполнение крона раз в сутки, но чтоб время выполнения было не одно и то же. Например, если крон скгодня стартонул скрипт в 12:00, то завтра уже в 12:20, послезавтра в 12:40 и т.д. Смысл в том, чтоб десятки скриптов где запуск крона не нужен с точностью до минуты не запускались одновременно и имели некий фазовы сдвиг.
цитата
11/02/15 в 13:36
 ivango
S_Flash писал:
чтоб десятки скриптов где запуск крона не нужен с точностью до минуты не запускались одновременно и имели некий фазовы сдвиг


Распиши их в кронджобе отдельно, со сдвигом по времени
цитата
11/02/15 в 14:12
 Stek
10 03 */2 * *

каждый второй день в 10 минут в 3 часа ночи
цитата
11/02/15 в 18:46
 S_Flash
Stek писал:
10 03 */2 * *


спасибо!

Везде замечаю, что с сутками нет примеров подобно минутам и часам. Имею ввиду
*/2 * * * * - раз в две минуты
* */2 * * * - раз в два часа
почему
"10 03 */2 * *", а не, например, "* * */2 * *" ?
цитата
11/02/15 в 19:13
 Stek
S_Flash писал:
"10 03 */2 * *", а не, например, "* * */2 * *" ?

* - каждый.
В твоем примере "* * */2 * *" - каждую минуту, каждый час, каждый второй день
цитата
11/02/15 в 19:34
 S_Flash
Stek:
Т.е. * * */2 * * - верно как кадые сутки?
Но почему ты привёл пример в виде 10 03 */2 * *, где конкретно 3й час и 10 минута?
цитата
11/02/15 в 19:42
 Mika
S_Flash: Может мануал по крону для начала прочесть, и после него вопросы задавать, если останутся?
S_Flash писал:
Stek:
Т.е. * * */2 * * - верно как кадые сутки?

Тебе же Stek написал про *. И указанная тобой конструкция будет вызывать скрипт каждуюу минуту, каждый час, каждый второй день, каждый месяц, каждый день недели. А чтобы запускать скрипт каждый второй день, надо зафиксировать минуту и час, что и делается в одному из примеров выше "10 03 */2 * *", т.е. запуск будет происходить на 10-ю минуту 3-го часа каждого второго дня и т.д.
цитата
11/02/15 в 19:53
 S_Flash
Mika:
Но я тоже довольно доступно описал выше вопрос. Т.е. почему аналогия рушится именно на днях?!
*/2 * * * * - верно для минут
* */2 * * * - верно для часов
* * */2 * * - не верно для дней
цитата
11/02/15 в 20:18
 Stek
S_Flash писал:
Но почему ты привёл пример в виде 10 03 */2 * *, где конкретно 3й час и 10 минута?

Просто теоретически в 3 часа ночи сервер менее нагружен, а 10 минут потому, что если и есть кроны на этот час, то они должны уже отработать.
цитата
11/02/15 в 20:34
 ivango
S_Flash писал:
*/2 * * * * - верно для минут


Да.. только для минут это и верно.

S_Flash писал:
* */2 * * * - верно для часов


уже не верно... надо: 0 */2 * * *
т.е. явно указать во сколько минут каждые 2 часа будет стартовать.
Если написать * */2 * * * тогда каждый второй час скрипт будет выполняться каждую минуту (т.е. 60 раз выполнился, час подождал, еще 60 раз выполнился)

0 0 */2 * * - та же логика, что и для часов. Надо явно указать, во сколько часов и минут будет стартовать задача каждый второй день.
цитата
11/02/15 в 21:08
 Mika
S_Flash писал:
Т.е. почему аналогия рушится именно на днях?!
* */2 * * * - верно для часов

Если у тебя эта конструкция запускает скрипт раз в 2 часа, то имхо у твоего крон-демона какой-то кривой парсер, ибо по правилам скрипт должен запускаться каждую минуту каждого второго часа.
Добавь в кронтаб
* */2 * * * date >> /tmp/crontest
И загляни в файлик через пару часов.
цитата
11/02/15 в 23:14
 S_Flash
ivango: Mika: О мужики, вы пролили свет на годы моего неведения! smail54.gif
Теперь многое прояснилось!


Эта страница в полной версии