Sponsored Content
Top Forums Shell Programming and Scripting Schedule Job Fortnightly (FRI) in Crontab Post 302850027 by KhawHL on Tuesday 3rd of September 2013 09:00:39 PM
Old 09-03-2013
Hi All,

Thanks for the reply.
I'd tried as below, but encountered error.

0 8 ** 6 [ $(( $(( $(date +%s ) / 86400 )) % 2 )) -eq 0 ] && $HOME/admin/scripts/rjob.sh
crontab: error on previous line; unexpected character found in line.
crontab: errors detected in input, no crontab file generated.

---------- Post updated at 08:51 AM ---------- Previous update was at 08:41 AM ----------

I'm able to schedule with below syntax. Shall feedback the result..
0 10 * * 5 [ $(( $(date +'\%U') % 2)) -gt 0 ] && /usr/local/bin/your_script

---------- Post updated at 09:00 AM ---------- Previous update was at 08:51 AM ----------

[QUOTE=Chubler_XL;302848241]No Solaris platform available to test but this crontab entry :

Code:
0 10 * * 5 [ $(( $(date +'\%U') % 2)) -gt 0 ] && /usr/local/bin/your_script

Or run your script every friday and test week of year is odd with

Code:
if [ $(( $(date +%U) % 2 )) -gt 0 ]


Tested using below:
at now [ $(( $(date +'\%U') % 2)) -gt 0 ] && /path/rjob.sh
ksh: \35 % 2: syntax error
 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

How to schedule a job

Hi, How can i schedule a job, i.e a program named p found at path a/b/c, to run at a time T everyday? Thanks (5 Replies)
Discussion started by: ashvik
5 Replies

2. UNIX for Dummies Questions & Answers

Crontab schedule

I have the following crontab entry. 0,30 00-16 * * * This job runs every 30 minutes between the hours of 12:00AM and 4:00PM. How can I have it stop at 4:30PM instead? Thank you, David (3 Replies)
Discussion started by: dkranes
3 Replies

3. Solaris

crontab to run mon.wed.fri

I have it set to the following 0 9 * * 1,3,5 /var/tmp/sys_diag It ran correctly on Wednesday but did not run on Friday and I am not sure why, does the above appear to be correct? (3 Replies)
Discussion started by: deaconf19
3 Replies

4. Shell Programming and Scripting

Schedule a job using Crontab

I would like to execute my script at 17.30 and 23.00 using crontab, could anybody help me out!! Thanks in Advance!! (1 Reply)
Discussion started by: jatanig
1 Replies

5. AIX

Schedule Job

how to schedule a job in aix, pls explain with cmd (1 Reply)
Discussion started by: udtyuvaraj
1 Replies

6. Shell Programming and Scripting

Schedule a script to run at 10am from mon to fri

Hi, I need to write a shell script which will run i background and will execute other script only on Mon to Fri 10 AM but not on Sat and Sun. I am able to set it to run on every day at 10AM but how to make it to run only on Mon to Fri Thanks, Firestar. (7 Replies)
Discussion started by: firestar
7 Replies

7. Shell Programming and Scripting

schedule job

Hi, I have a spcific box called abc in autosys and below that there are 2 jobs. my requirement is to run the abc box only on monday and rest of the day the rest of the jobs should be in success status.. ---------- Post updated at 03:11 PM ---------- Previous update was at 02:45 PM ----------... (4 Replies)
Discussion started by: j_panky
4 Replies

8. AIX

job run before schedule on crontab

Guys, yesterday i just make a script with email as a result and put them into crontab, it will execute on 23.33. Today, i recieved email from system twice as result the script. the first email send at 23.02 and the second send at 23.33 how is the script execute two times ? the first job run... (6 Replies)
Discussion started by: michlix
6 Replies

9. Shell Programming and Scripting

Crontab schedule

Hi all, I would like to schedule a crontab script, which should run From 8pm Thursday to 2am Friday and it should run every 10 minutes. I have put a script like below, is it the correct one. 10 01,02,20,21,22,23,00 * * 4-5 /u01/app/test.ksh Any other options available to schedule the same... (6 Replies)
Discussion started by: sid2013
6 Replies

10. Shell Programming and Scripting

How to schedule crontab?

Hi All, How to schedule crontab on all day except sunday and monday means from tuesday to saturday at 06:00AM. (3 Replies)
Discussion started by: Riverstone
3 Replies
DateTime::Event::Cron(3pm)				User Contributed Perl Documentation				DateTime::Event::Cron(3pm)

NAME
DateTime::Event::Cron - DateTime extension for generating recurrence sets from crontab lines and files. SYNOPSIS
use DateTime::Event::Cron; # check if a date matches (defaults to current time) my $c = DateTime::Event::Cron->new('* 2 * * *'); if ($c->match) { # do stuff } if ($c->match($date)) { # do something else for datetime $date } # DateTime::Set construction from crontab line $crontab = '*/3 15 1-10 3,4,5 */2'; $set = DateTime::Event::Cron->from_cron($crontab); $iter = $set->iterator(after => DateTime->now); while(1) { my $next = $iter->next; my $now = DateTime->now; sleep(($next->subtract_datetime_absolute($now))->seconds); # do stuff... } # List of DateTime::Set objects from crontab file @sets = DateTime::Event::Cron->from_crontab(file => '/etc/crontab'); $now = DateTime->now; print "Now: ", $now->datetime, " "; foreach (@sets) { my $next = $_->next($now); print $next->datetime, " "; } # DateTime::Set parameters $crontab = '* * * * *'; $now = DateTime->now; %set_parms = ( after => $now ); $set = DateTime::Event::Cron->from_cron(cron => $crontab, %set_parms); $dt = $set->next; print "Now: ", $now->datetime, " and next: ", $dt->datetime, " "; # Spans for DateTime::Set $crontab = '* * * * *'; $now = DateTime->now; $now2 = $now->clone; $span = DateTime::Span->from_datetimes( start => $now->add(minutes => 1), end => $now2->add(hours => 1), ); %parms = (cron => $crontab, span => $span); $set = DateTime::Event::Cron->from_cron(%parms); # ...do things with the DateTime::Set # Every RTFCT relative to 12am Jan 1st this year $crontab = '7-10 6,12-15 10-28/2 */3 3,4,5'; $date = DateTime->now->truncate(to => 'year'); $set = DateTime::Event::Cron->from_cron(cron => $crontab, after => $date); # Rather than generating DateTime::Set objects, next/prev # calculations can be made directly: # Every day at 10am, 2pm, and 6pm. Reference date # defaults to DateTime->now. $crontab = '10,14,18 * * * *'; $dtc = DateTime::Event::Cron->new_from_cron(cron => $crontab); $next_datetime = $dtc->next; $last_datetime = $dtc->previous; ... # List of DateTime::Event::Cron objects from # crontab file @dtc = DateTime::Event::Cron->new_from_crontab(file => '/etc/crontab'); # Full cron lines with user, such as from /etc/crontab # or files in /etc/cron.d, are supported and auto-detected: $crontab = '* * * * * gump /bin/date'; $dtc = DateTime::Event::Cron->new(cron => $crontab); # Auto-detection of users is disabled if you explicitly # enable/disable via the user_mode parameter: $dtc = DateTime::Event::Cron->new(cron => $crontab, user_mode => 1); my $user = $dtc->user; my $command = $dtc->command; # Unparsed original cron entry my $original = $dtc->original; DESCRIPTION
DateTime::Event::Cron generated DateTime events or DateTime::Set objects based on crontab-style entries. METHODS
The cron fields are typical crontab-style entries. For more information, see crontab(5) and extensions described in Set::Crontab. The fields can be passed as a single string or as a reference to an array containing each field. Only the first five fields are retained. DateTime::Set Factories See DateTime::Set for methods provided by Set objects, such as "next()" and "previous()". from_cron($cronline) from_cron(cron => $cronline, %parms, %set_parms) Generates a DateTime::Set recurrence for the cron line provided. See new() for details on %parms. Optionally takes parameters for DateTime::Set. from_crontab(file => $crontab_fh, %parms, %set_parms) Returns a list of DateTime::Set recurrences based on lines from a crontab file. $crontab_fh can be either a filename or filehandle reference. See new() for details on %parm. Optionally takes parameters for DateTime::Set which will be passed along to each set for each line. as_set(%set_parms) Generates a DateTime::Set recurrence from an existing DateTime::Event::Cron object. Constructors new_from_cron(cron => $cronstring, %parms) Returns a DateTime::Event::Cron object based on the cron specification. Optional parameters include the boolean 'user_mode' which indicates that the crontab entry includes a username column before the command. new_from_crontab(file => $fh, %parms) Returns a list of DateTime::Event::Cron objects based on the lines of a crontab file. $fh can be either a filename or a filehandle reference. Optional parameters include the boolean 'user_mode' as mentioned above. Other methods next() next($date) Returns the next valid datetime according to the cron specification. $date defaults to DateTime->now unless provided. previous() previous($date) Returns the previous valid datetime according to the cron specification. $date defaults to DateTime->now unless provided. increment($date) decrement($date) Same as "next()" and "previous()" except that the provided datetime is modified to the new datetime. match($date) Returns whether or not the given datetime (defaults to current time) matches the current cron specification. Dates are truncated to minute resolution. valid($date) A more strict version of match(). Returns whether the given datetime is valid under the current cron specification. Cron dates are only accurate to the minute -- datetimes with seconds greater than 0 are invalid by default. (note: never fear, all methods accepting dates will accept invalid dates -- they will simply be rounded to the next nearest valid date in all cases except this particular method) command() Returns the command string, if any, from the original crontab entry. Currently no expansion is performed such as resolving environment variables, etc. user() Returns the username under which this cron command was to be executed, assuming such a field was present in the original cron entry. original() Returns the original, unparsed cron string including any user or command fields. AUTHOR
Matthew P. Sisk <sisk@mojotoad.com> COPYRIGHT
Copyright (c) 2003 Matthew P. Sisk. All rights reserved. All wrongs revenged. This program is free software; you can distribute it and/or modify it under the same terms as Perl itself. SEE ALSO
DateTime(3), DateTime::Set(3), DateTime::Event::Recurrence(3), DateTime::Event::ICal(3), DateTime::Span(3), Set::Crontab(3), crontab(5) perl v5.14.2 2010-06-10 DateTime::Event::Cron(3pm)
All times are GMT -4. The time now is 02:34 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy