How to get the weekday of the given date?


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting How to get the weekday of the given date?
# 1  
Old 12-16-2005
How to get the weekday of the given date?

Hi All,
Thanks in Advance.

I want a function/script which returns the weekday of the given date.
the input to the function/script is the date with format MM/DD/YYYY, it should return the weekday as 1 for sunday, 2 for monday .......7 for saturday.

ex: if the function called like this date_func 12/15/2005
it should return 5 (thursday)


your help will be greatly appreciated


Regards,
Rinku
# 2  
Old 12-16-2005
Look at datecalc
# 3  
Old 12-16-2005
one more way,

not thoroughly tested

Code:
>cat weekday
# !/usr/bin/bash

weekday=$1

month=`echo ${weekday:0:2}`
day=`echo ${weekday:3:2}`
year=`echo ${weekday:6:4}`
weekday=1

for dayval in `cal $month $year | grep $day`
do
 if [ $day -ne $dayval ]
 then
   weekday=$(($weekday + 1))
 else
   break
 fi
done

echo "weekday is $weekday"

exit 0

# 4  
Old 12-16-2005
Question compairing datecalc o/p to "date +%j"

hi,

just saw the datecalc...was checking the julian day option for the same.If i want to find todays julian day using "date" command the output is:

$date +%j
$350


but if i use datecalc for calculating todays julian day:

$datecalc -j 2005 12 16
$53720


just wondering what the output means here Smilie

would be great if someone can throw some light on the same Smilie

regards,
Bhups
# 5  
Old 12-16-2005
http://en.wikipedia.org/wiki/Julian_day

First of all,

"The Julian day or Julian day number (JDN) is the number of days that have elapsed since 12 noon Greenwich Mean Time (UT or TT) on Monday, January 1, 4713 BC in the proleptic Julian calendar."

datecalc is using the modified julian day number:

"The Modified Julian Day (MJD), introduced by the Smithsonian Astrophysical Observatory in 1957 to record the orbit of Sputnik, is defined in terms of the Julian day as follows: MJD = JD - 2400000.5 The offset of 0.5 means that MJD started at midnight at the beginning of November 17, 1858, and that every Modified Julian Day begins and ends at midnight UT or TT."

The author of the date program you are using has confused day-of-year with julian day:

"The use of Julian date to refer to the day-of-year (ordinal date) is usually considered to be incorrect."
# 6  
Old 12-16-2005
Question how to get day-of-year??

hi Perderabo,

thanks for the info Smilie ...i really use to think that julian day refer to (what you say) day-of-year...

so my next obvious question Smilie is how to get day-of-year from datecalc??

in my scripts i always come across this prob of converting julain date (CCYY DDD) to the MM DD YY format, so it would be a great help if i could use datecalc for the same purpose Smilie

thanks in advance...

regards,
Bhups.
# 7  
Old 12-16-2005
Should Jan 1 be a zero or a one? Both schemes are in use.

Compute the mjd of January 1 for the year. (Should Jan 1 be 1? If so subtract one.) Subtract the result from the mjd of the date to get day-of-year.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Answers to Frequently Asked Questions

Compare date in .txt with system date and remove if it's lesser than system date

I m working on shell scripting and I m stuck where in my .txt file there is column as expiry date and I need to compare that date with system date and need to remove all the rows where expiry date is less than system date and create a new .txt with update. (1 Reply)
Discussion started by: Stuti
1 Replies

2. UNIX for Beginners Questions & Answers

Compare date in .txt with system date and remove if it's lesser than system date

Can someone help me with the code wherein there is a file f1.txt with different column and 34 column have expiry date and I need to get that and compare with system date and if expiry date is <system date remove those rows and other rows should be moved to new file f2.txt . I don't want to delete... (2 Replies)
Discussion started by: Stuti
2 Replies

3. Shell Programming and Scripting

Date: invalid date trying to set Linux date in specific format

i try to set linux date & time in specific format but it keep giving me error Example : date "+%d-%m-%C%y %H:%M:%S" -d "19-01-2017 00:05:01" or date +"%d-%m-%C%y %H:%M:%S" -d "19-01-2017 00:05:01" keep giving me this error : date: invalid date ‘19-01-2017 00:05:01' Please use CODE tags... (7 Replies)
Discussion started by: umen
7 Replies

4. Shell Programming and Scripting

[ksh] Weekday a week ago

Hi, Using TZ and date gives an easy way to find out the dates one or more days ago. Now I am in need of knowing the date one week ago. So, now is Thursday and I want to know the date on Thursday a week ago. Unfortunately I can only get as far back as 6 days ago When using TZ+168 it reverts... (7 Replies)
Discussion started by: ejdv
7 Replies

5. Shell Programming and Scripting

Converting a date to friday date and finding Min/Max date

Dear all, I have 2 questions. I have a file with many rows which has date of the format YYYYMMDD. 1. I need to change the date to that weeks friday date(Ex: 20120716(monday) to 20120720). Satuday/Sunday has to be changed to next week friday date too. 2. After converting the date to... (10 Replies)
Discussion started by: 2001.arun
10 Replies

6. Shell Programming and Scripting

yesterday's "weekday" date

i've been going through https://www.unix.com/answers-frequently-asked-questions/13785-yesterdays-date-date-arithmetic.html to find a cmd that will print me yesterday's date. I have found one that does it nicely set YEST = `date '+20%y/%m/%d' | awk -F"/" '{print $1$2($3-1)}'` as you can... (3 Replies)
Discussion started by: jack.bauer
3 Replies

7. Shell Programming and Scripting

Writing a script to run weekly/monthly - check for weekday or day-of-the-month

Hi all, I currently have a UNIX file maintenance script that runs daily as a cron job. Now I want to change the script and create functions/sub inside it that runs on a weekly or monthly basis. To run all the scripts' daily maintenance, I want to schedule it in cron as simply maint.sh... (1 Reply)
Discussion started by: newbie_01
1 Replies

8. Shell Programming and Scripting

get weekday based on date

Hi all, i am looking for a method of determining the weekday when date is know (bash, if possible). Let's say that i am looking to get the weekday for MAY 01 2011, how can i convert this into Sunday or SUN? any suggestions? (4 Replies)
Discussion started by: gigagigosu
4 Replies

9. Shell Programming and Scripting

Date One Week Ago From Given Date, Not From Current Date

Hi all, I've used various scripts in the past to work out the date last week from the current date, however I now have a need to work out the date 1 week from a given date. So for example, if I have a date of the 23rd July 2010, I would like a script that can work out that one week back was... (4 Replies)
Discussion started by: Donkey25
4 Replies

10. UNIX for Dummies Questions & Answers

[kornshell] Getting the next weekday date

Hi All can anyone help me with this, Im new to kornshell scripting and is trying to get the next weekday to a variable: strDate=%date '+%Y%m%d' // YYYYMMDD strNewDate= :confused: // assuming that current date is 20050812 (friday) then strNewDate will get 20050815 (monday) or if... (1 Reply)
Discussion started by: rs_f01
1 Replies
Login or Register to Ask a Question