(I have already read How can I test a new cron script ?.)
I have a specific problem (cron job doesn't appear to run, or run properly), but the issue is general: I'd like to debug scripts that are cronned. I am aware that I can set up a * * * * * crontab line, but that is not a fully satisfactory solution. I would like to be able to run a cron job from the command line as if cron were running it (same user, same environment variables, etc.). Is there a way to do this? Having to wait 60 seconds to test script changes is not practical.
Best Answer
Here's what I did, and it seems to work in this situation. At least, it shows me an error, whereas running from the command line as the user doesn't show the error.
Step 1: I put this line temporarily in the user's crontab:
then took it out once the file was written.
Step 2: Made myself a little run-as-cron bash script containing:
So then, as the user in question, I was able to
This solution could obviously be expanded to make use of sudo or such for more flexibility.
Hope this helps others.