$(date +%u) -eq 5 If week day is 5 (Friday), I put this test first like that we will not try the second test(call date) if the first one is false.
-a and
$(date +%d) -lt 22 monthly day number less that 22(the script should run in the first 3 weeks/21 days)
then echo OK Do something , run your script, etc
else exit if one or both condition not true.
Thanks! Although a monthly backup may take place on say the 1st. It's not necessarily the last Friday of the month. I'm not really sure how I can write this down clearly. There is an example in post 3 ^
If I understand your code that will run it the first, second and third Friday, but not the fourth of each month, whereas we require it to run on every fourth week.
I was thinking along the lines of using an initial date, then +28 days (multiple). Since there is no set date as such the monthly backups take place, its every four weeks. So we could start the cycle in the script on whatever date. For example, I know our next monthly backups begin on Friday 30th April 2010. Here is a few dates after this to try and give more of an idea of the cycle -
30th April (Just happens to be the last Friday)
28th May (Just happens to be the last Friday)
25th June (Just happens to be the last Friday)
23rd July (Not the last Friday, it's in fact the 4th out of 5 Fridays in July)
20th August (Not the last Friday either, it's the 3rd out of 4)
The reason it is set a little odd like this is because it's the weekend after our pay (we get paid 4 weekly, not monthly).
Hope this makes sense.
Thanks for the replies!
Rab
Edit - Poor attempt at pseudo like code below
Cron Entry - 00 21 * * 5 /backupscript
backupscript -
There is probably a better way to do it, I don't know enough about scripting to get my head around it
Edit 2 - This is AIX v5.3 if it makes any difference.
Last edited by rab; 04-22-2010 at 04:00 PM..
Reason: Added a bit at the end
Any solution will need to know when the last monthly backup ran or when the next monthly backup is scheduled to run, perhaps by having that info stored in a file by the monthly backup process. With that info in hand, it should be easy enough for the daily to decide if it should run on any given friday.
Any solution will need to know when the last monthly backup ran or when the next monthly backup is scheduled to run, perhaps by having that info stored in a file by the monthly backup process. With that info in hand, it should be easy enough for the daily to decide if it should run on any given friday.
Regards,
Alister
Good point.
Perhaps adding into the monthly backup script a touch command to create a file with todays date +28 days.
Then on the call script in the cron check to see if that date matches todays date? Would this work?
I'm not so sure on the syntax for this though, or if it is possible (I imagine it is though).
You want to to run a weekly backup script every week except every fourth week of the year when you want to run a different script/command.
What about
Edit:
Let's explain :
if 5th day of the week(Friday) move to next condition.
calculate the week number from the beginning of the year.
divide the result by 4 and get the reminder, if the reminder is 0 the week is a fourth week.
If you run my code tomorrow (April 23, 2010) will be a fourth week Friday
Last edited by danmero; 04-22-2010 at 09:12 PM..
Reason: Add note
Hi,
1)
If some job supposed to run on 1st of every month at 7 AM
In cron job when we have a blackout on the 1st ( i.e when 1st falls on a sunday ) how can we make the job run the next business day?
2) How can we run a job on 25th of every quarter 7 AM(jan,apr,jul,oct)
And if 25th... (5 Replies)
Hi Expert
Please help me to set a cron job schedule,
Ihave a job that run every 3rd Friday of the month at 1030am.
I tried to set up like this, but the job still runs every friday at 1030am.
I want the job to run every 3rd Friday of the month at 1030am only
30 10 15,16,17,18,19,20,21... (2 Replies)
Hi ,
I have removed a cron for particular user , but cron job seems to be running even after the cron entry is removed. The purpose of the cron was to sendmail to user ( it uses mailx utility )
I have restarted cron and sendmail service still user is getting mail alerts from the cron job. And... (4 Replies)
Hi ,
i need to reboot a server during 2nd and 4th saturday every month. i have come up with the below cron
30 17 8-14 * * if ; then /rebootscript; fi # to reboot every second saturday
30 17 22-28 * * if ; then /rebootscript; fi # to reboot every fourth saturday
I am wondering why it... (3 Replies)
I needed a cron job to run on the second to last friday of every month. Our servers are running HP-UX, and the HP-UX date command is pretty basic and does not have all of the fancy options that Linux date command does, and it does not have the ability at all to return future dates. So I had to... (0 Replies)
Hi,
I need to write cron job, which tries to build a project. It would check out code from a repository and then will attempt to build it .The results of the build would show up on a web-page (a table with rows, one for each build, should get updated; a link to the detailed log file; color green... (3 Replies)
Hi,
How to monitor whether a cron job is running or errored out..?other than checking the process using ps-aef
how to enter the cron job which throws the output in 1 file and errors in other file. i remember it can be done using >1 and >2 ..but not sure..
any expert..please help!! (1 Reply)
I run cron in solaris 10 zone. One cron job which syncing files to nfs mounted on container, creates after finishing another cron proccess(/usr/sbin/cron), and after 100 existing cron proccesses next cron job will not start. It's too weird for me, I'm not able to solve this problem. Theoretically... (3 Replies)