Sponsored Content
Top Forums Shell Programming and Scripting Obtain date for first Tuesday of every month Post 302872239 by Akshay Hegde on Friday 8th of November 2013 04:24:31 AM
Old 11-08-2013
If you have ksh93 try this

Code:
$ cal 2013
                            2013
      January               February               March          
Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa  
       1  2  3  4  5                  1  2                  1  2  
 6  7  8  9 10 11 12   3  4  5  6  7  8  9   3  4  5  6  7  8  9  
13 14 15 16 17 18 19  10 11 12 13 14 15 16  10 11 12 13 14 15 16  
20 21 22 23 24 25 26  17 18 19 20 21 22 23  17 18 19 20 21 22 23  
27 28 29 30 31        24 25 26 27 28        24 25 26 27 28 29 30  
                                            31                    

       April                  May                   June          
Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa  
    1  2  3  4  5  6            1  2  3  4                     1  
 7  8  9 10 11 12 13   5  6  7  8  9 10 11   2  3  4  5  6  7  8  
14 15 16 17 18 19 20  12 13 14 15 16 17 18   9 10 11 12 13 14 15  
21 22 23 24 25 26 27  19 20 21 22 23 24 25  16 17 18 19 20 21 22  
28 29 30              26 27 28 29 30 31     23 24 25 26 27 28 29  
                                            30                    

        July                 August              September        
Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa  
    1  2  3  4  5  6               1  2  3   1  2  3  4  5  6  7  
 7  8  9 10 11 12 13   4  5  6  7  8  9 10   8  9 10 11 12 13 14  
14 15 16 17 18 19 20  11 12 13 14 15 16 17  15 16 17 18 19 20 21  
21 22 23 24 25 26 27  18 19 20 21 22 23 24  22 23 24 25 26 27 28  
28 29 30 31           25 26 27 28 29 30 31  29 30                 
                                                                  

      October               November              December        
Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa  
       1  2  3  4  5                  1  2   1  2  3  4  5  6  7  
 6  7  8  9 10 11 12   3  4  5  6  7  8  9   8  9 10 11 12 13 14  
13 14 15 16 17 18 19  10 11 12 13 14 15 16  15 16 17 18 19 20 21  
20 21 22 23 24 25 26  17 18 19 20 21 22 23  22 23 24 25 26 27 28  
27 28 29 30 31        24 25 26 27 28 29 30  29 30 31

Code:
$ cat First_Tuesday_In_Month.sh 
#!/bin/ksh
Year=2013

for i in {0..11}; do
    for j in {0..6}; do
    date=$(date -d"$((Year-1))1231 $j day $i month" +"%w %F")
    if [ ${date:0:1} -eq 2 ]; then
           echo ${date:2}
    fi
    done
done

Code:
$ ksh First_Tuesday_In_Month.sh 
2013-01-01
2013-02-05
2013-03-05
2013-04-02
2013-05-07
2013-06-04
2013-07-02
2013-08-06
2013-09-03
2013-10-01
2013-11-05
2013-12-03

@ pravin27 you are printing date of every monday...Smilie
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

CRONTAB: Every second Tuesday of the month

Morning everyone. You'll need to excuse me for I'm running a little empty this morning. Need to execute a job every second Tuesday of the month. Am I correct in my understanding that this isn't possible directly from crontab & hence I'll need to script. Does anyone have any similar solutions ?... (2 Replies)
Discussion started by: Cameron
2 Replies

2. Shell Programming and Scripting

Pass the first date and last date of previous month

Hi All, I need to run a job every month at the beginning of the month which is scheduled through autosys, lets say on 03/01/2010. I need to pass the last month's i.e February's first_date = 02/01/2010 and last_date = 02/28/2010 as variables to a stored procedure. Can somebody please pass... (2 Replies)
Discussion started by: vigdmab
2 Replies

3. UNIX for Dummies Questions & Answers

Date command to obtain the last month is not working correctly..

Hello, I could not find the exactly same post here.. so I will explain what I did to get the last month using date command. I used date +%Y-%m -d "-1 months" to get the last month. However, the returned value of above command on 2009/10/31 was 2009 10 and not 2009 09.. and the... (9 Replies)
Discussion started by: tigersk
9 Replies

4. UNIX for Dummies Questions & Answers

print previous month (current month minus 1) with Solaris date and ksh

Hi folks month=`date +%m`gives current month Howto print previous month (current month minus 1) with Solaris date and ksh (7 Replies)
Discussion started by: slashdotweenie
7 Replies

5. Shell Programming and Scripting

how to obtain date and day of the week from `date` command

Hi, does anybody know how to format `date` command correctly to return the day of the week? Thanks -A I work in ksh.... (1 Reply)
Discussion started by: aoussenko
1 Replies

6. UNIX for Dummies Questions & Answers

Can we get every tuesday or monday's date for the current week

Hi Can we get every tuesday or monday's date for the current week ? For the current week i need tuesday's date or monday's date in %m%d%y fromat Thanks (5 Replies)
Discussion started by: laxmi131
5 Replies

7. Shell Programming and Scripting

How to obtain a day of the week from the date?

I have a date in format YYYYMMDD, i need to get the day of the week from the given date. I am working in AIX system. ---------- Post updated at 09:59 AM ---------- Previous update was at 09:57 AM ---------- Tried to post sum of the thread's link from which i tried, but de rules didnt allow me... (9 Replies)
Discussion started by: baranisachin
9 Replies

8. Shell Programming and Scripting

Help with getting last date of previous month and first date of previous 4th month from current date

I have requirment to get last date of previous month and the first date of previous 4th month: Example: Current date: 20130320 (yyyymmdd) Last date of previous month: 20130228 (yyyymmdd) First date of previous 4th month: 20121101 (yyyymmdd) In my shell --date, -d, -v switches are not... (3 Replies)
Discussion started by: machomaddy
3 Replies

9. Shell Programming and Scripting

Can we get Tuesday's date of the current week in UNIX

Hi All, I have a requirement which would calculate the Tuesday's date of the current week in yyyymmdd format in unix shell script. Please help me out how could I do this . I appreciate your help Regards, raj (7 Replies)
Discussion started by: rajeevm
7 Replies

10. UNIX for Beginners Questions & Answers

How bash treats literal date value and retrieve year, month and date?

Hi, I am trying to add few (say 3 days) to sysdate using - date -d '+ 3 days' +%y%m%d and it works as expected. But how to add few (say 3 days) to a literal date value and how bash treats a literal value as a date. Can we say just like in ORACLE TO_DATE that my given literal date value... (2 Replies)
Discussion started by: pointers1234
2 Replies
NL_LANGINFO(3)						   BSD Library Functions Manual 					    NL_LANGINFO(3)

NAME
nl_langinfo -- get locale information LIBRARY
Standard C Library (libc, -lc) SYNOPSIS
#include <langinfo.h> char * nl_langinfo(nl_item item); DESCRIPTION
The nl_langinfo() function returns a pointer to a string containing information set by the program's locale. The names and values of item are defined in <langinfo.h>. The entries under Category indicate in which setlocale(3) category each item is defined. Constant Category Meaning CODESET LC_CTYPE Codeset name D_T_FMT LC_TIME String for formatting date and time D_FMT LC_TIME Date format string T_FMT LC_TIME Time format string T_FMT_AMPM LC_TIME A.M. or P.M. time format string AM_STR LC_TIME Ante-meridiem affix PM_STR LC_TIME Post-meridiem affix DAY_1 LC_TIME Name of the first day of the week (e.g.: Sunday) DAY_2 LC_TIME Name of the second day of the week (e.g.: Monday) DAY_3 LC_TIME Name of the third day of the week (e.g.: Tuesday) DAY_4 LC_TIME Name of the fourth day of the week (e.g.: Wednesday) DAY_5 LC_TIME Name of the fifth day of the week (e.g.: Thursday) DAY_6 LC_TIME Name of the sixth day of the week (e.g.: Friday) DAY_7 LC_TIME Name of the seventh day of the week (e.g.: Saturday) ABDAY_1 LC_TIME Abbreviated name of the first day of the week ABDAY_2 LC_TIME Abbreviated name of the second day of the week ABDAY_3 LC_TIME Abbreviated name of the third day of the week ABDAY_4 LC_TIME Abbreviated name of the fourth day of the week ABDAY_5 LC_TIME Abbreviated name of the fifth day of the week ABDAY_6 LC_TIME Abbreviated name of the sixth day of the week ABDAY_7 LC_TIME Abbreviated name of the seventh day of the week MON_1 LC_TIME Name of the first month of the year MON_2 LC_TIME Name of the second month MON_3 LC_TIME Name of the third month MON_4 LC_TIME Name of the fourth month MON_5 LC_TIME Name of the fifth month MON_6 LC_TIME Name of the sixth month MON_7 LC_TIME Name of the seventh month MON_8 LC_TIME Name of the eighth month MON_9 LC_TIME Name of the ninth month MON_10 LC_TIME Name of the tenth month MON_11 LC_TIME Name of the eleventh month MON_12 LC_TIME Name of the twelfth month ABMON_1 LC_TIME Abbreviated name of the first month ABMON_2 LC_TIME Abbreviated name of the second month ABMON_3 LC_TIME Abbreviated name of the third month ABMON_4 LC_TIME Abbreviated name of the fourth month ABMON_5 LC_TIME Abbreviated name of the fifth month ABMON_6 LC_TIME Abbreviated name of the sixth month ABMON_7 LC_TIME Abbreviated name of the seventh month ABMON_8 LC_TIME Abbreviated name of the eighth month ABMON_9 LC_TIME Abbreviated name of the ninth month ABMON_10 LC_TIME Abbreviated name of the tenth month ABMON_11 LC_TIME Abbreviated name of the eleventh month ABMON_12 LC_TIME Abbreviated name of the twelfth month ERA LC_TIME Era description segments ERA_D_FMT LC_TIME Era date format string ERA_D_T_FMT LC_TIME Era date and time format string ERA_T_FMT LC_TIME Era time format string ALT_DIGITS LC_TIME Alternative symbols for digits RADIXCHAR LC_NUMERIC Radix character THOUSEP LC_NUMERIC Separator for thousands YESEXPR LC_MESSAGES Affirmative response expression NOEXPR LC_MESSAGES Negative response expression RETURN VALUES
nl_langinfo() returns a pointer to an empty string if item is invalid. EXAMPLES
The following example uses nl_langinfo() to obtain the date and time format for the current locale: #include <time.h> #include <langinfo.h> #include <locale.h> int main(void) { char datestring[100]; struct tm *tm; time_t t; char *ptr; t = time(NULL); tm = localtime(&t); (void)setlocale(LC_ALL, ""); ptr = nl_langinfo(D_T_FMT); strftime(datestring, sizeof(datestring), ptr, tm); printf("%s ", datestring); return (0); } SEE ALSO
setlocale(3), tm(3), nls(7) STANDARDS
The nl_langinfo() function conforms to IEEE Std 1003.1-2001 (``POSIX.1''). HISTORY
The nl_langinfo() function appeared in NetBSD 1.0. BSD
April 14, 2011 BSD
All times are GMT -4. The time now is 03:44 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy