1

I've configured manually the /etc/crontab to add an event that runs on day 9 every months...

The Cron is running, but it didn't runned my code yet... My code is at the last line:

17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
23 9    9 * *   root    wget "http://www.mysite.com/url.api?dowhat=mensalcheck" --no-cache --read-timeout=1600 -O "/var/log/mysite.com/$(date "+url-api.%d-%m-%y.log")"
cusspvz
  • 105
  • 1
  • 2
  • 7
  • Canonical Answer for troubleshooting crontab: http://serverfault.com/questions/449651/why-is-my-crontab-not-working-and-how-can-i-troubleshoot-it – Eric Leschinski Feb 05 '13 at 15:31

2 Answers2

3

To make sure your cron is run, use "crontab -e" or "sudo crontab -e" to edit your cron jobs. Then when you're done editing and saved the file, crontab will install the new cronjob properly to be executed the next time.

So, use sudo crontab -e and make sure you at least do one modification to the file.

Also cron usually has no PATH variable, meaning it does know where to find wget, so the best is to put /usr/bin/wget.

Weboide
  • 3,275
  • 1
  • 23
  • 32
1

Your problem is that cron sees the percent signs as special. It converts them to newlines. You need to escape the percent signs to make them work normally.

23 9 9 * * root wget "http://www.mysite.com/url.api?dowhat=mensalcheck" --no-cache --read-timeout=1600 -O "/var/log/mysite.com/$(date "+url-api.\%d-\%m-\%y.log")"

If you check your log file or root's email, you should see error messages complaining about the problem.

Dennis Williamson
  • 60,515
  • 14
  • 113
  • 148