Sponsored Content
Top Forums Shell Programming and Scripting The Best Way to Compare Dates Post 302422691 by daniel.gbaena on Wednesday 19th of May 2010 06:55:38 AM
Old 05-19-2010
Hi vgersh99.

It's very usefull the post that you have linked me, but if I have asked for this question is becasuse I hoped that Unix be able to compare the dates directly.

Any way, I let here my own, scrip, solution.

Code:
#Gets the number of day of year by a date passed like an argument. 
#$1 is the day of the date, $2 the month and $3 the year.
function getDayOfYead() {

    dayOfYear=$1
    
    #Sum the month days.
    case $2 in
         1) dayOfYear=`expr $dayOfYear + 0`
            ;;
         2) dayOfYear=`expr $dayOfYear + 31`
            ;;
         3) dayOfYear=`expr $dayOfYear + 59`
            ;;
         4) dayOfYear=`expr $dayOfYear + 90`
            ;;
         5) dayOfYear=`expr $dayOfYear + 120`
            ;;
         6) dayOfYear=`expr $dayOfYear + 151`
            ;;
         7) dayOfYear=`expr $dayOfYear + 181`
            ;;
         8) dayOfYear=`expr $dayOfYear + 212`
            ;;
         9) dayOfYear=`expr $dayOfYear + 243`
            ;;
        10) dayOfYear=`expr $dayOfYear + 273`
            ;;
        11) dayOfYear=`expr $dayOfYear + 304`
            ;;
        12) dayOfYear=`expr $dayOfYear + 334`
            ;;
    esac

    #To the leap years.
    leapYear=`echo $[$3%4]`
    if [ $leapYear -eq 0 ]
    then
        leapYear=`echo $[$3%100]`
        if [ $leapYear -ne 0 ]
        then
            leapYear=`echo $[$3%400]`
            if [ $leapYear -eq 0 ]
            then
                dayOfYear=`expr $dayOfYear + 1`
            fi
        fi
    fi

    echo "$dayOfYear"
}

I use the adove code cause using this script and
Code:
date +%j

, is very easy to compare to dates.

Thanks for reading.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

compare two dates

I have a log file with date format like 10-Oct-02 13:20:29 ..... at the beginning of each line in the log file, and I need to grep data from this file to list the lines with date no longer than one days. I tried to use awk to do this but it looks very complicated to do it. Is there... (6 Replies)
Discussion started by: wchen
6 Replies

2. Programming

How to compare two dates

Hi I am writing a unix program. In that, i should compare two dates. I would like to know how to compare two dates in unix-whether they are same or not. pls help (5 Replies)
Discussion started by: bankpro
5 Replies

3. Programming

How to compare dates in C/C++

Hi, Is there any system defined function to compare two dates in C/C++? Thanks (1 Reply)
Discussion started by: naan
1 Replies

4. Shell Programming and Scripting

compare dates

Hi Gurus I am getting the timestamp of the last generated log file its like this "Oct 31 10:26" I want to compare this timestamp with the current date in shell script. I want to compare if the (timestamp-currentime) > 10 minutes how do i do this. Thanks Ragha (2 Replies)
Discussion started by: ragha81
2 Replies

5. Shell Programming and Scripting

compare dates...

hi all :) how can in compare yyyy/dd/mm with yyyy/dd/mm in perl i want the result like grater than or less than the given date... thanks in advance (3 Replies)
Discussion started by: i_priyank
3 Replies

6. Shell Programming and Scripting

How to compare the dates..

Hi all, I've written a script which gives the below information... End Date&Time: 2008-10-21 10.54.37 Now i want to calculate this time with the current time.. and if its more than 48 hours past with the current time it should echo "48 Hours back" Please help me.. thanks in... (4 Replies)
Discussion started by: suri.tyson
4 Replies

7. Shell Programming and Scripting

Compare dates

Need to find all records where date in one filed is greater than date in other. Input: ABC 2 Filed3 CDG * X 20080903 20081031 180.00 ABD 2 Filed3 CDG * X 20081101 20081031 190.00 ABE 2 Filed3 CDG * X 20090903 20081031 120.00 ABC 2 Filed3 CDG * X 20080903 20081015 130.00 Output: ... (2 Replies)
Discussion started by: necroman08
2 Replies

8. Shell Programming and Scripting

compare dates

I want to compare a list of dates in a file with today's date & list only dates that are less than only 60 days old . please help . the date in the file are in format 11-FEB-2009 02-FEB-2009 26-JAN-2009 24-JAN-2009 13-JAN-2009 16-DEC-2008 10-DEC-2008 01-DEC-2008 25-NOV-2008 19-NOV-2008... (3 Replies)
Discussion started by: skamal4u
3 Replies

9. HP-UX

Compare dates

Hi, I want to convert two datetime fields to find out if the difference is one hour, in linux I've done this by converting both the datetime values to unix epoch time and subtracting them to find out if the difference is more than 3600s, however this does not work in hp-ux. I've these... (3 Replies)
Discussion started by: Random_Net
3 Replies

10. Shell Programming and Scripting

Compare Dates.

Hi All, I am entering StartDate and EndDate as parameters to script. Want to have an check saying, "If StartDate is greater than EndDate then don't execute the script". Pseudo Code: if then Execute script else exit 0 fi Can you please help me on the same? Thanks and... (4 Replies)
Discussion started by: Nagaraja Akkiva
4 Replies
HW_GETOBJECT(3) 							 1							   HW_GETOBJECT(3)

hw_GetObject - Object record

SYNOPSIS
mixed hw_getobject (int $connection, mixed $objectID, [string $query]) DESCRIPTION
Gets an object record. If the second parameter is an array of integer the function will PARAMETERS
o $connection - The connection identifier. o $objectID - The object identifier, or an array of identifiers. o $query - The query string has the following syntax: <expr> ::= "(" <expr> ")" | "!" &lt;expr> | /* NOT */ <expr> "||" <expr> | /* OR */ <expr> "&amp;&amp;" <expr> | /* AND */ <attribute> <operator> <value> <attribute> ::= /* any attribute name (Title, Author, DocumentType ...) */ <operator> ::= "=" | /* equal */ "<" | /* less than (string compare) */ ">" | /* greater than (string compare) */ "~" /* regular expression matching */ RETURN VALUES
Returns the object record for the given object ID if the second parameter is an integer. If the second parameter is an array of integer the function will return an array of object records. In such a case the last parameter is also evaluated which is a query string. SEE ALSO
hw_getandlock(3), hw_getobjectbyquery(3). PHP Documentation Group HW_GETOBJECT(3)
All times are GMT -4. The time now is 01:54 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy