Как активировать этот crontab?

У меня есть установка как ниже, но то, что это никогда было выполняемым.

$ chmod +x /var/tmp/myscript.sh
$ vim /var/tmp/crontab.sh;
* * * * * sleep(10); /var/tmp/myscript.sh
$ crontab /var/tmp/crontab.sh

Теперь просто, заметил не работа. Что я делаю неправильно?

$ grep CRON /var/log/syslog
Nov 28 15:20:01 sun CRON[1768]: (sun) CMD (sleep(10);/var/tmp/myscript.sh)
Nov 28 15:20:01 sun CRON[1766]: (CRON) error (grandchild #1768 failed with exit status 2)
Nov 28 15:20:01 sun CRON[1766]: (CRON) info (No MTA installed, discarding output)

Продолжите:

$ vim /var/tmp/crontab.sh
* * * * * sleep 10; /var/tmp/myscript.sh>/dev/null 2>&1
$ tail -f /var/log/syslog | grep CRON
Nov 28 15:50:02 sun CRON[2301]: (sun) CMD (sleep 10; /var/tmp/myscript.sh>/dev/null 2>&1)
Nov 28 15:51:01 sun CRON[2312]: (sun) CMD (sleep 10; /var/tmp/myscript.sh>/dev/null 2>&1)
3
задан 28 November 2011 в 20:53

2 ответа

sleep не берет аргумент в круглых скобках (как в C), таким образом, это должно быть

* * * * * sleep 10; /var/tmp/myscript.sh

Всегда тестируйте команды в системной оболочке прежде, чем подать его к cron ;).

1
ответ дан 1 December 2019 в 16:44

На самом деле лучший способ использовать crontab при помощи самого crontab:

crontab-l # перечисляют текущие crontab записи

crontab-e # редактируют таблицу крона

Как только Вы заканчиваете редактировать crontab (через 'crontab-e'), он активируется и исчерпает то, что было установлено каждый раз, когда он был установлен исчерпать.

Обратите внимание, что машина должна работать за crontab для работы. Если Вы хотите что-то более гибкое, можно посмотреть на anacron (8).

2
ответ дан 1 December 2019 в 16:44

Другие вопросы по тегам:

Похожие вопросы: