LINUX.ORG.RU

Cron. Выполнение каждую минуту.

 , , ,


3

0

Добрый вечер ЛОР.
Имеется скрипт, который надо выполнять каждую минуту. Почитав маны по крону, понял, что крутить надо через crontab, но как ?
Попробовал написать так

# m h  dom mon dow   command
/1 * * * * /home/rainx/wp.sh
Ругнулся на некорректность, если написать там просто 1 - не работает. Как сие чудо правильно подкрутить?
Прошу прощения за такой глупый вопрос, просто этой зверушкой пользуюсь первый раз :3

Ответ на: комментарий от DeVliegendeHollander

Наверно я криворукий, но ... не работает :(. Сам cron в Ubuntu надо куда-то заталкивать или он из коробки автоматически запускается ?

Neverhex ()

если написать там просто 1 - не работает

если написать там просто 1, это будет означать: «каждый раз, как минута равняется 1». То есть в 0:01, 1:01, 2:01, 3:01 и так далее.

и попробуй так:

*/1 * * * * sh -c /home/rainx/wp.sh

i-rinat ★★★★★ ()
Последнее исправление: i-rinat (всего исправлений: 1)
Ответ на: комментарий от Neverhex

Про убунту не знаю, там всё не по-людски. Но должно быть из коробки, как же без крона-то?

Посмотри:

$ ps ax | grep cron
 3696 ?        Ss     0:00 /usr/sbin/cron
$ 

Должен быть в таблице процессов.

DeVliegendeHollander ★★ ()
Ответ на: комментарий от Neverhex

Пять звёзд, команда. Это должно работать. Крон читает файл раз в минуту и выполняет строку при совпадении времени с шаблонами. * * * * * проходит каждый раз.

x3al ★★★★★ ()
Последнее исправление: x3al (всего исправлений: 1)
Ответ на: комментарий от DeVliegendeHollander

Судя по выхлопу имеется

rainx@rainx-laptop:~$ ps ax | grep cron
  858 ?        Ss     0:00 cron
 1631 pts/0    S+     0:00 grep --color=auto cron
Только скрипт не выполняет -_- (Права на выполнение у скрипта есть)

Neverhex ()
Ответ на: комментарий от Neverhex

Только скрипт не выполняет

А что значит «не выполняет»?

Cron ничего на stdout не выводит, он молча выполняет скрипт, а результат внутрисистемным мылом шлёт владельцу crontab'а.

Запусти mail, там наверняка сообщения о выполнении твоего скрипта имеются. И в большо-ом количестве. :)

DeVliegendeHollander ★★ ()

вангую проблемы с переменными окружения

kombrig ★★★ ()
Ответ на: комментарий от Chaser_Andrey

В syslog от самого крона ничего нет. Только crontab с сообщениями о редактировании *листа*

Neverhex ()

Вообщем как правильно:

Переключись на пользователя из под которого это должно выполнять:
su - USERNAME
Потом:
crontab -e
В выскачившем редакторе добавь в файл:
*/1 * * * * /home/rainx/wp.sh >/dev/null 2>/dev/null
Сохрани.
cron передергивать не нужно.

Последние перенаправления нужны что-бы на твое мыло каждый раз не падал выхлоп скрипта.
unixway однако.

hbars ★★★★★ ()
Ответ на: комментарий от Neverhex

Ну ты mail-то запускал? Что в полученных сообщениях написано? Что тебе товарищ cron докладывает?

Если ничего, то скорее всего, как тут выше уже предполагали, что-то не так с переменными среды.

DeVliegendeHollander ★★ ()
Ответ на: комментарий от Neverhex

В /var/spool/cron/crontabs/ твой файл с этой строчкой появился?

hbars ★★★★★ ()

отличный тест, братюнь
9 из 10 не понимают что * и */1 это одно и то же

zolden ★★★★★ ()
Ответ на: комментарий от AITap

Именно так и писал ... Проблема не решена, просто я забил на это :D

Neverhex ()
Ответ на: комментарий от mm3

Если честно, я забил на крон и реализовал ожидание через sleep :3 (Да, получается скрипт постоянно *висит в фоне*, но исправно работает)

Neverhex ()

У какого-то из кронов (вроде vixie) был магический баг с \n (переносом строки) в конце кронтаба. То ли его отсутствие, то ли наличие приводило к тому, что последняя строка не исполнялась никогда.

anonymous ()
Ответ на: комментарий от Chaser_Andrey

единственный, кто дал правильный ответ. :)

beastie ★★★★★ ()
Ответ на: комментарий от Neverhex

Не останавливайся, иди до конца, будь мужиком :)

* * * * * echo «1» && /bin/sh /home/rainx/wp.sh  >> /tmp/wpdebug

Таки дело может быть в кривости скрипта, и надо указывать sh, и может быть дело в кривости системы и надо указывать путь до sh

UFO-man ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.