The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"crontab работает очень странно"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [ Отслеживать ]

"crontab работает очень странно"  +/
Сообщение от Oracul on 16-Дек-09, 09:35 
Уважаемые пользователи,

я не могу справиться и понять следующую проблему:

есть 2 cronJob:

0  7  3-27  *    1-5 /home/oracle/testCron.sh >> /home/oracle/testCron.log
0  7  3-27  *    6   /home/oracle/testCron2.sh >> /home/oracle/testCron.log

задумано так, что первая должна работать с понедельника по пятницу (3-27 числа),
а вторая только в субботу.

Но почему то они срабатывают каждый день обе, причем и на солярисе и на линуксе:


>  CMD: /home/oracle/testCron2.sh >> /home/oracle/testCron.log
>  oracle 28353 c Wed Dec 16 07:00:00 2009
>  CMD: /home/oracle/testCron.sh >> /home/oracle/testCron.log
>  oracle 28354 c Wed Dec 16 07:00:00 2009

В чем тут дело? Я никак не могу понять!
Ведь в документации написано:

  crontab Entry Format
     A crontab file consists of lines of  six  fields  each.  The
     fields  are  separated by spaces or tabs. The first five are
     integer patterns that specify the following:

     minute (0-59),
     hour (0-23),
     day of the month (1-31),
     month of the year (1-12),
     day of the week (0-6 with 0=Sunday).

     Each of these patterns can be either  an  asterisk  (meaning
     all legal values) or a list of elements separated by commas.
     An element is either a number or two numbers separated by  a
     minus sign (meaning an inclusive range). Time specified here
     is interpreted in the timezone of the cron(1M) daemon, which
     is  set system-wide in /etc/default/init. Entries do not use
     the invoking user's timezone.

Особенно это:
     The specification of days  can
     be  made  by  two  fields  (day  of the month and day of the
     week). Both are adhered to if specified as a  list  of  ele-
     ments. See EXAMPLES.

Пример:
     This example runs a command on the first  and  fifteenth  of
     each month, as well as on every Monday:

     0 0 1,15 * 1

Помогите пожалуйста разобраться!

Спасибо большое!

Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "crontab работает очень странно"  +/
Сообщение от PavelR (??) on 16-Дек-09, 10:00 
>[оверквотинг удален]
>     ments. See EXAMPLES.
>
>Пример:
>     This example runs a command on the
>first  and  fifteenth  of
>     each month, as well as on every
>Monday:
>
>     0 0 1,15 * 1
>

Словарик купить, англицко-русский. Тут же ясно написано: 1 и 15 числа, а также каждый понедельник.

Соответственно, Ваши

>0  7  3-27  *    1-5 /home/oracle/testCron.sh >> /home/oracle/testCron.log
>0  7  3-27  *    6   /home/oracle/testCron2.sh >> /home/oracle/testCron.log

будут исполняться в любой день с 3 по 27, А ТАКЖЕ в 1-5 дни недели / в 6 день недели, соответственно.

>
>
>Помогите пожалуйста разобраться!
>
>Спасибо большое!

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "crontab работает очень странно"  +/
Сообщение от Oracul on 16-Дек-09, 10:04 
Спасибо за комментарий и совет купить англицко-русский словарик, но
пример был вырезан из manual'а, т.к. он похож на мою задачу:

с 3 по 27 число каждого месяца, с понедельника по пятницу - testCron.sh
с 3 по 27 число каждого месяца, только в субботу - testCron2.sh

Сегодня 16 декабря, среда - я ожидаю запуск только testCron.sh,
но запускаются обе задачи - Почему?


я описал свою пробему: мне над
>[оверквотинг удален]
>будут исполняться в любой день с 3 по 27, А ТАКЖЕ в
>1-5 дни недели / в 6 день недели, соответственно.
>
>
>
>>
>>
>>Помогите пожалуйста разобраться!
>>
>>Спасибо большое!

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "crontab работает очень странно"  +/
Сообщение от Oracul on 16-Дек-09, 10:10 
Только сейчас начинает доходить.

Так ли это, что условия по дням (day of month и day of week) выполняются по OR?

То есть для True нужно, что бы совпало либо day of month либо day of week получается?

Это катастрофа тогда :(

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "crontab работает очень странно"  +/
Сообщение от Pahanivo email(ok) on 16-Дек-09, 11:14 
     This example runs a command on the first  and  fifteenth  of
     each month, as well as on every Monday:

     0 0 1,15 * 1

пеервод

Это екзампел запускает задачу в 1 и 15 число, а также КАЖДЫЙ ПОНЕДЕЛЬНЕГ!

это не катастрофа :
1) man date - выводи дату в нудном формате
2) в начала скрипта делаем преверку даты элементарными if/fi

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "crontab работает очень странно"  +/
Сообщение от Oracul on 16-Дек-09, 11:44 
>[оверквотинг удален]
>     0 0 1,15 * 1
>
>пеервод
>
>Это екзампел запускает задачу в 1 и 15 число, а также КАЖДЫЙ
>ПОНЕДЕЛЬНЕГ!
>
>это не катастрофа :
>1) man date - выводи дату в нудном формате
>2) в начала скрипта делаем преверку даты элементарными if/fi

Спасибо большое за совет !
Реализовал с помошью date + case

Спасибо!

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру