views:

38

answers:

3

I want a cron expression that represents 6th September 2010 6:00 am

+2  A: 

Original question was tagged cron so this first section applies to that. See below for an updated answer for the Quartz CronTrigger tool.


Most crontabs don't let you specify the year so you'll probably have to put that in the script itself (or a wrapper around the script/program).

You can do this with something like:

if [[ $(date +%Y) != 2010 ]] ; then
    exit
fi

The option you're looking for to run at 6am on September 6 every year is

0 6 6 9 * your_command_goes_here
| | | | |
| | | | +- any day of the week.
| | | +--- 9th month (September).
| | +----- 6th day of the month.
| +------- 6th hour of the day.
+--------- Top of the hour (minutes = 0).

For the Quartz CronTrigger format, you'd be looking at something like:

0 0 6 6 9 ? 2010
| | | | | |   |
| | | | | |   +- 2010 only.
| | | | | +----- any day of the week.
| | | | +------- 9th month (September).
| | | +--------- 6th day of the month.
| | +----------- 6th hour of the day.
| +------------- Top of the hour (minutes = 0).
+--------------- Top of the minute (seconds = 0).

(details garnered from here).

paxdiablo
can please explain with each field
NewBeee_Java
There ya go, @NewBie.
paxdiablo
from http://www.quartz-scheduler.org/docs/tutorials/crontrigger.html we also need to mention hour ,minute and second
NewBeee_Java
@NewBie, CronTrigger is not cron. I've never seen a cron that allows either seconds or years to be specified. Quartz may allow that, I wouldn't know since I've never used it but, if your question is about Quartz/CronTrigger rather than the real cron, you should retag it so.
paxdiablo
@pax did that..
NewBeee_Java
second field is still missing pax
NewBeee_Java
Okay, @NewBie, updated as per your edits.
paxdiablo
you need to edit your answer second field is not labled properly. thanks to @org.
NewBeee_Java
@NewBie, I think it is, but it may be a cultural thing. Top of the hour, at least here in the Great Southern Land, means something-o'clock (i.e., minutes = 0). Updated description to clarify.
paxdiablo
ok Pax I misunderstood :)
NewBeee_Java
A: 

For one-shot jobs the 'at' command is better suited than cron.

tbalazs
+1  A: 

0 0 6 6 9 ? 2010
second minute hour[24 hr format] day-of-month month day-of-week year[optional]

org.life.java
Thanks @org.life.java
NewBeee_Java