Crontab


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Crontab
# 8  
Old 02-03-2012
Hi Akash
What the experts are trying to tell you is to achieve this requirement in 2 steps, not with cron alone.

Step 1: Have a cron entry as shown below:

Code:
00 12 * * 4 abc.sh

The above cron entry will schedule your script(abc.sh) to run every thursday. However, your requirement is to run only on 1st and 3rd thursday.

Step 2: Changes in the script in order to block it from running other than 1st and 3rd thursday. You can add a small snippet like this at the beginning of your script abc.sh

Code:
dt=`date '+%d'`
$ if [ $dt -ge 8 -a $dt -le 14 ] || [ $dt -gt 21 ]
then
 exit
fi

This code will exit if the date range is within 2nd week or 4th week which in other words, helps your script to run only on 1st and 3rd thursdays (code not tested).

Guru.
# 9  
Old 02-03-2012
Cron entry to run every thursday at midnight. Change min and hour to whatever is required.
Code:
0 0 * * 4 <command>

And an if-condition to check if it's the first or fourth thursday, try this bash code snippet: (untested)
Code:
if [ `date +%a` == "Thu" ]
then
    c=1
    dt=`date +%d`
    until [ $dt -gt 1 ]
    do
        dt=$(($dt - 7))
        c=$(($c + 1))
    done
    if [[ $c =~ [14] ]]
    then
        exit
    fi
fi

# 10  
Old 02-04-2012
Data

Thanks guys....
I can't change code in the script.
So it will be better to run this script through manually on Thursdays....Smilie

Thank you again guys...Smilie
# 11  
Old 02-04-2012
I never said your script... I said your job!
And the job you are to write is a shell script containing all the above information.
Why a special job script?
Because compared to the script you might execute in command line and run. In batch mode cron has no idea of your environment and so you are to set it, and take out anything interactive wise like keyboard or terminal setting to not have cron errors... And since you are not aside when execution, I am quite sure you would like to know how the job executed? so you will in your job script output to log files I always use two one for normal execution and one for errors...
etc...
# 12  
Old 02-04-2012
Bug

Quote:
Originally Posted by balajesuri
Cron entry to run every thursday at midnight. Change min and hour to whatever is required.
Code:
0 0 * * 4 <command>

And an if-condition to check if it's the first or fourth thursday, try this bash code snippet: (untested)
Code:
if [ `date +%a` == "Thu" ]
then
    c=1
    dt=`date +%d`
    until [ $dt -gt 1 ]
    do
        dt=$(($dt - 7))
        c=$(($c + 1))
    done
    if [[ $c =~ [14] ]]
    then
        exit
    fi
fi


Thanks balajesuri....
Let assume I need to run a.sh on 12:00 AM.So just a simple doubt where I can use this if condition?
# 13  
Old 02-07-2012
Hello Guys....

I found the solution at the time of sleeping....Smilie
We can schedule this by adding below line in cron.

00 12 1-7,14-21 * * 4 <Command>

I think it will work.(Not tested).
Please suggest on this.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

at vs crontab

Hi, can someone explain the differences between using the at and crontab commands. When would you use one command over the other? TIA Dom (1 Reply)
Discussion started by: domburf69
1 Replies

2. Shell Programming and Scripting

crontab

I have a crontab entry,but it is not working. Can anybody help me in this regard?? (2 Replies)
Discussion started by: Sourav_Paul
2 Replies

3. UNIX for Advanced & Expert Users

Help regarding crontab

Dear All jobs are scheduled in crontab . To view this I use crontab -l . But suddenly today I am not able to see any jobs that is being scheduled in crontab. when I type crontab -l , I am seeing nothing.I am not logging through admin user(i dont have it).But I can schedule jobs through... (3 Replies)
Discussion started by: tkbharani
3 Replies

4. UNIX for Advanced & Expert Users

Crontab help

hi, I run a .sh file using crontab. I need to know the path of the file . Previously when I run the file alone , i used "pwd" but now when using crontab it gives the temp directory of the file. Is there any way I can find the absolute path of the file when i execute it ? Regards, Ranga (7 Replies)
Discussion started by: r_W213
7 Replies

5. Shell Programming and Scripting

Using Crontab

Hi All, I've a shell script which calls a Sybase stored procedure to do some functionality. I want to schedule the running of this script by crontab. I'm using Solaris 5.8. When i executed the following command crontab -l i got the output as crontab: can't open your crontab file How... (10 Replies)
Discussion started by: sumesh.abraham
10 Replies

6. UNIX for Dummies Questions & Answers

crontab

hi all how to schedule the crontab file in unix? (2 Replies)
Discussion started by: ss4u
2 Replies

7. Shell Programming and Scripting

help with crontab

i have a ksh script that creates messages in a temp directory and then sends them out using the sendmail command and i'm trying to set it up to run every night with crontab. So the basic gist of the script is #create temp dir and messages ... #loop through each message and send using sendmail... (3 Replies)
Discussion started by: bob122480
3 Replies

8. UNIX for Dummies Questions & Answers

Crontab

How can I run "crontab" (parameters) every 6 hours on solaris machine? Thanks (1 Reply)
Discussion started by: gen4ik
1 Replies

9. UNIX for Dummies Questions & Answers

about crontab

dear all , does any one now how can i become sure that the crontab that i put was working successfully not by looking for thr result of the sheduled task but from a log for the crontab or something similar and i need to check that the cron i wrote is correct 00 15 * * 0,1,2,3,6... (2 Replies)
Discussion started by: habuzahra
2 Replies

10. UNIX for Dummies Questions & Answers

crontab

Hi I have a shell script which works fine at the command line and does works in crontab also but does not send the output to mail as other scripts do by default. 10 1 * * * /export/home/test/report_script by default should send the output to mail but the script runs OK and the output... (1 Reply)
Discussion started by: run_time_error
1 Replies
Login or Register to Ask a Question