Sponsored Content
Top Forums Shell Programming and Scripting Run script on every last sunday of the month Post 302977760 by Don Cragun on Thursday 21st of July 2016 07:46:27 PM
Old 07-21-2016
Hi netdbaind,
The problem with your logic is that the last Sunday in a month is 22-28 in a month with 28 days, 23-29 in a month with 29 days, 24-30 in a month with 30 days and 25-31 in a month with 31 days. There is nothing that you have shown us in your code that determines whether or not you are in a leap year nor what month you're evaluating.

The code rdrtx1 suggested works in any locale where cal will print Sundays as the leftmost field on a line. You could guarantee that the output from cal will give you what you want no matter where in the world you run it if you change the first line to:
Code:
ls=$(LC_ALL=C cal | awk '$1+=0 {ls=$1} END {print ls}')

This User Gave Thanks to Don Cragun For This Post:
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Cron job -- to execute at every first Sunday of every month

Dear all How can I schedule the cronjob to be run sometime at every first Sunday at every month? I have the edit the cronjob every month now, thanks (2 Replies)
Discussion started by: shanemcmahon
2 Replies

2. UNIX for Dummies Questions & Answers

How to Set up a cronjob On 4th Sunday of every Month?

How to Set up a cronjob which will run On 4th Sunday of every Month at 8:00 PM :( (11 Replies)
Discussion started by: tp2115
11 Replies

3. UNIX for Dummies Questions & Answers

Run script on every second sunday

I was to schedule a script in a crontab after every 15 days specically on every 2nd Sunday. I know that i can schedule on basis of weekdays, but can it be done by skipping in between???:wall: (5 Replies)
Discussion started by: masquerer
5 Replies

4. Shell Programming and Scripting

run the script for last day of the month

Hello Experts, I have a script which i want to run the on last day of every month. let say I have backup.sh script which i want to run it every month last day. Can anyone please help :confused: thanks (4 Replies)
Discussion started by: aks_1902
4 Replies

5. Shell Programming and Scripting

How to get first sunday of the month?

Hi, Please can someone help me in getting first sunday date of a month. i_year=`date +%Y` ny_first_sun_nov=`cal 10 $i_year | sed '/^$/d' |head -3 |tail -1| rev | cut -c1` This works good if the first sunday has a value but not if it is blank and first sunday falls on second week. ... (17 Replies)
Discussion started by: infyanurag
17 Replies

6. UNIX for Dummies Questions & Answers

Script should check and run only on Sunday

Hi All, I have a script, I want to make sure the script should check whether the day is sunday, only then it should run, if it is run other days it should check and exit the script. Kindly help. Thanks in Advance !! (41 Replies)
Discussion started by: nanz143
41 Replies

7. Shell Programming and Scripting

How to setup cronjob 3rd sunday of every month?

Hi All, I need to set up cronjob for every third sunday of the month. here i have seen one example for 4th sunday for every month in another post and it looks perfect.can anyone please help me to understand this and help me to get the setup for third sunday of every month.Thanks. this is... (7 Replies)
Discussion started by: netdbaind
7 Replies

8. Shell Programming and Scripting

Trigger the script if it is first sunday of the quarterly month

Hello All, I have script which needs to be scheduled in crontab which needs to be run only on the first sunday of the quarterly months (March, June, September,Dec). Can anyone please help me out on this. Thanks, Arun. (13 Replies)
Discussion started by: Arun1992
13 Replies

9. Shell Programming and Scripting

Script to run on 2 4 and 7 day of the month

I am looking for a unix script which could run a job on 2, 4 and 7 working day of the month. if the days are falling on the saturday/sunday. it should run on the next day. Thank you.. (9 Replies)
Discussion started by: tradingspecial
9 Replies

10. AIX

cron job on 3rd sunday of every month

Hi, Actually scheduled my test scripts on test severs as shown below. They are supposed to run on 3rd sunday of every month. Unfortunately it ran on 2nd sunday of the month (suspecting that it will run every sunday). I am sorry if I miss something. Could you please let me know if I did any... (1 Reply)
Discussion started by: System Admin 77
1 Replies
iCal::Parser::SAX(3pm)					User Contributed Perl Documentation				    iCal::Parser::SAX(3pm)

NAME
iCal::Parser::SAX - Generate SAX events from an iCalendar SYNOPSIS
use iCal::Parser::SAX; my $parser=iCal::Parser::SAX->new(Handler=>SAXHandler,%args); $parser->parse_uri($file); $parser->parse_uris(@files); DESCRIPTION
This module uses iCal::Parser to generates SAX events for the calendar contents. The xml document generated is designed for creating monthly calendars with weeks beginning on monday (e.g., by passing the output through an xsl styleheet). The basic structure of the generated document (if output through a simple output handler like "XML::SAX::Writer"), is as follows: <ical> <calendars> <calendar id="cal-id" index="n" name="..." description="..."/> </calendars> <events> <year year="YYYY"> <month month="[1-12]"> <week week="n"> <day date="YYYY-MM-DD"> <event uid="event-id" idref="cal-id" [all-day="1"]> <!-- ... --> </event> </day> </week> </month> </events> <todos> <todo idref="cal-id" uid="..."> <!--- ... --> </todo> </todos> </ical> Along with basics, such as converting calendar attributes to lowercase elements (e.g., a "DTSTART" attribute in the input would generate a sax event like "element({Name="'dtstart'})>), a number of other processes occur: o "day" elements are are generated for each date within the months from the first month in the input to the last, even if there are no calendar events on that day. This guarantees a complete calendar month for further processing. If there is an overlap between two or more events, the attribute "conflict", containing the number of concurrent overlaps, is added to the element. o If the beginning or end of the month does not start on a monday, or end on a sunday, the days from the previous (next) month month are duplicated within the first (last) week of the current month, including duplicate copies of any calendar events occuring on those days. This allows for displaying a monthly calendar the same way a program such as Apple's iCal would, with calendar events showing up if they fall within the overlapping days in the first or last week of a monthly calendar. METHODS
Along with the standard SAX parsing methods "parse_uri", "parse_file", etc.), the following methods are supported. new(%args) Create a new SAX parser. All arguments other than "Handler" and "no_escape" are passed to iCal::Parser. Arguments Handler The SAX handler. no_escape If not set, quotes, ampersands and apostrophes are converted to entites. In any case < is converted to an entity, "\n" is converted to the return entity and double backslashes ("\") are removed. parse_uris(@uris) Pass all the input uris to "iCal::Parser" and generate a combined output calendar. parse_hash($hash) Parse the hash returned from iCal::Parser::calendar directly. AUTHOR
Rick Frankel, cpan@rickster.com COPYRIGHT
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of the license can be found in the LICENSE file included with this module. SEE ALSO
iCal::Parser, XML::SAX::Base perl v5.14.2 2012-08-05 iCal::Parser::SAX(3pm)
All times are GMT -4. The time now is 02:53 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy