Day of the week from a string


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Day of the week from a string
# 1  
Old 04-08-2010
Day of the week from a string

Hi All,

I need to know how to derive the day of the week by passing the value in following format:

Feb 28 2010

The output I'm expecting is Sunday or Sun.

I know, I can use the following code to get the day of the week.
Code:
date +%a

But I want to pass the value as a string. Please help and we don't have GNU installed.

Thanks
Shash
# 2  
Old 04-08-2010
Your post seems unclear (at least to me) on what exactly you are trying to achieve. What OS you are working with, and what's the default output of 'date' command ? For example, I can print the first element of my output quite easily :
Code:
date | awk '{print $1}'

# 3  
Old 04-08-2010
something to start with:
Code:
#!/bin/ksh

date='Aug 1 2010'

eval $(echo "${date}" | nawk 'BEGIN {split("JAN|FEB|MAR|APR|MAY|JUN|JUL|AUG|SEP|OCT|NOV|DEC", tA, "|");while(++i in tA) monA[tA[i]]=i}{printf("year=%s month=%s day=%s\n", $3, monA[toupper($1)], $2)}')
echo "year->[${year}] month->[${month}] day->[${day}]"

cal "${month}" "${year}" | nawk -v day="${day}" '
  FNR==2 {split("Sun|Mon|Tue|Wed|Thu|Fri|Sat", daysA, "|")}
  FNR > 2 {
    for(i=1; i <= NF; i++)
      if ( $i == day) {
        printf("%s\n", (NF == 7 || FNR!=3) ? daysA[i] : days[i+(6-NF)+1])
        exit
      }
  }
'


Last edited by vgersh99; 04-08-2010 at 12:22 PM.. Reason: abbreviated day names
# 4  
Old 04-08-2010
Thanks vgersh99. I think it is working fine except it is just printing the first character. I mean for Sunday, the output is just S. Can you please let me know how to print atleast first 3 characters.

Thanks
Shash
# 5  
Old 04-08-2010
Quote:
Originally Posted by shash
Thanks vgersh99. I think it is working fine except it is just printing the first character. I mean for Sunday, the output is just S. Can you please let me know how to print atleast first 3 characters.

Thanks
Shash
Edited the original post - this assumes the week in your locale starts on Sunday. Change the line in red if/when needed to account for your locale specifics.
# 6  
Old 04-08-2010
Thanks a lot. It is working fine.
# 7  
Old 04-08-2010
This will display the abreviated day of the week
Code:
date -d "Feb 28 2010" +%a

This will display the full day of the week
Code:
date -d "Feb 28 2010" +%A

This will display the numeric day of the week (mon=1, sun=7)
Code:
date -d "Feb 28 2010" +%u

This will display the numeric day of the week (sun=0, sat=6)
Code:
date -d "Feb 28 2010" +%w

 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Get the week's day

Hi All, I have the below requirement , if i give the week number for ex 41 i need to get the date for Monday and thursday for this given week. my expected output is 13/10/2014 (Monday's date) and 16/10/2014 (Thursday's date) I am using GNU LINUX . Pls help me with your thoughts. Thanks in... (7 Replies)
Discussion started by: mohanalakshmi
7 Replies

2. UNIX for Dummies Questions & Answers

Sudoers for one day per week?

I have been volunteered by my boss to be the sysadmin for our production redhat server. He asked me to tighten the security to avoid mishaps like "rm -f *" that occured not long ago. Right now, we have 53 users sudo-ing into the machine and it is an audit nightmare. I am wondering if it... (15 Replies)
Discussion started by: alan
15 Replies

3. Shell Programming and Scripting

Get day of week from epoch time

Need assistance . Below code gives me the date but I wanted output as day of the week (wday) . Code: use Time::Local; my $time=timelocal(1,2,3,9,11,2013); $theTime = localtime($time); print "$theTime\n"; Result: Mon Dec 9 03:02:01 2013 Wanted output as only Mon (2 Replies)
Discussion started by: ajayram_arya
2 Replies

4. HP-UX

Find Day of Week

In HP-UX the date command does not have the "-d" switch like some other *nixes do. I'm working a simple script to tell me, given the day, month and year what day of the week that falls on. Assuming valid day, month and year input (I'd perform quality checks on the input separately, but not... (5 Replies)
Discussion started by: rwuerth
5 Replies

5. Shell Programming and Scripting

Get day of week from cal

Hi all, I am trying to get dow from cal using below script #! /bin/bash YEAR=`echo $1 | cut -c 1-4` MONTH=`echo $1 | cut -c 5-6` DAY=`echo $1 | cut -c 7-8` for i in 1 2 3 4 5 6 7 do dayofweek=`cal $MONTH $YEAR | awk '$i == $DAY {printf("%s","$i")}'` echo $dayofweek... (4 Replies)
Discussion started by: bzylg
4 Replies

6. HP-UX

Get Day of Week from date

Hi All, I have date in string format 'YYYY-MM-DD'. I want to know day of the week for this date. Example. For '2005-08-21' my script should return '0' or Sunday For '2005-08-22' it should return '1' or Monday I want piece of code for HP-UX korn shell. Appreciate reply on this. (5 Replies)
Discussion started by: vpapaiya
5 Replies

7. UNIX for Dummies Questions & Answers

Changing First Day Of The Week?

Hi All, Our system is running on Solaris 8 and we are using US locale. By default the First Day Of Week is Sunday, is it possible for us to change it to Monday? I have googled it but found very little of use. THanks in advance. (2 Replies)
Discussion started by: fowlerleftfoot
2 Replies

8. Shell Programming and Scripting

Yesterday's Day of week

I need o get yesterday's day of week but im not exactly sure. the actual name is what i want. I can do it with numbers but im not sure with words. (3 Replies)
Discussion started by: rcunn87
3 Replies

9. Programming

Function that gets the day of the week (0-6) ??

Hi , I am working at Unix system,using c lang. I need c fun which return the day of the week . For example : 0- Sunday. 1- Monday. .... 10x. (4 Replies)
Discussion started by: kamil
4 Replies

10. UNIX for Dummies Questions & Answers

Calculating the day of the week

Hi all, I would like to calculate the day of the week using a supplied date. i.e. 20011012 = Day 5. Any ideas? Many thanks, ligs (4 Replies)
Discussion started by: ligs
4 Replies
Login or Register to Ask a Question