#!/bin/ksh
# two parms
# $1 = number of hours
# $2 = date in YYYY mm dd hh mi ss format
# prints 1 if date is older than now minus <number of hours>
# prints 0 when not older
isolder()
{
ago="$1"
echo "$2" | sed 's/\./ /g' | sed 's/-/ /g' | read dt
perl -e '
use Time::Local;
$then = time - ( $ARGV[0] * 3600);
$testtime =
timelocal( $ARGV[6], $ARGV[5], $ARGV[4],
$ARGV[3], $ARGV[2]-1, $ARGV[1]-1900);
$result = 0;
if ( $testtime < $then )
{
$result = 1;
}
print "$result\n";
' $ago $dt
}
dt="2008-10-21 10.54.37"
# sample usage:
result=$(isolder 48 "$dt" )
if [[ $result -eq 1 ]] ; then
echo "$dt is older than 48 hours"
else
echo "$dt is not older than 48 hours"
fi
dt="2008-10-19 10.54.37"
result=$(isolder 48 "$dt" )
if [[ $result -eq 1 ]] ; then
echo "$dt is older than 48 hours"
else
echo "$dt is not older than 48 hours"
fi
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)
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)
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)
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)
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)
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)
Hi to all.
When you have to compare a lot of dates in a SH code, there is a way to directly compare? For example, how can I check if two dates differ in less than a week?
Thank's for reading. (2 Replies)
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)
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
LEARN ABOUT DEBIAN
date::manip::migration5to6
Date::Manip::Migration5to6(3pm) User Contributed Perl Documentation Date::Manip::Migration5to6(3pm)NAME
Date::Manip::Migration5to6 - how to upgrade from 5.xx to 6.00
SYNOPSIS
When upgrading from Date::Manip 5.xx to 6.00, a few changes may be necessary to your scripts.
The Date::Manip::Changes5to6 document lists in more detail the ways in which Date::Manip changed, but very few of these actually entail
changes to your script.
It should be noted that once the changes are made to your script, it will no longer run correctly in 5.xx.
NECESSARY AND SUGGESTED CHANGES
The following changes are necessary, or strongly suggested:
Reading config files with Date_Init
If you use Date_Init to read any config files (if you do business mode calculations, you probably do), you should remove all of the
following config variables from your call to Date_Init:
GlobalCnf=FILE
PersonalCnf=FILE
PathSep=*
IgnoreGlobalCnf=*
PersonalCnfPath=*
and replace them with:
ConfigFile=FILE
where FILE is now the full path to a config file. Also, the ConfigFile argument should be the first argument in Date_Init.
Date_ConvTZ
The Date_ConvTZ function has changed. It should now take 3 arguments:
$date = Date_ConvTZ($date,$from,$to);
If $from is not given, it defaults to the local time zone. If $to is not given, it defaults to the local time zone.
The date is converted from the $from time zone into the $to time zone. Both should be any time zone (or alias) supported by
Date::Manip.
The old $errlevel argument is no longer handled.
ConvTZ and TZ config variables
If you use either the ConvTZ or TZ config variables, you should replace them with either SetDate or ForceDate. See the
Date::Manip::Config document for information.
The TZ variable will continue to work until Dec 2013 at which point it will be removed.
Other deprecated config variables
The following config variables have been deprecated, but will continue to function (though they will be removed at a future date):
IntCharSet (removed Oct 2012)
TZ (removed Dec 2013)
The following variables have been removed. If you use any of them, you may need to modify your scripts:
GlobalCnf
PersonalCnf
PathSep
IgnoreGlobalCnf
PersonalCnfPath
ConvTZ
Internal
TodayIsMidnight
DeltaSigns
UpdateCurrTZ
ResetWorkdDay
today, yesterday, tomorrow
If you parse the strings "today", "yesterday", or "tomorrow" in order to get the time now, or 24 hours in the past/future, this will no
longer work. These strings now refer strictly to the date (so "today" is the current day at midnight, "yesterday" is the previous day
at midnight, etc.).
To get the time now, 24 hours ago, or 24 hours in the future, you would need to parse the strings "now", "-24:00:00", or "+24:00:00"
respectively.
Do not use Memoize
In 5.xx, it was documented that you could use the module Memoize to speed up Date::Manip, especially when sorting dates.
This information is no longer accurate. Using Memoize in conjunction with Date::Manip should have little impact on performance, and may
lead to incorrect results, especially if you change config variables.
Please see the Date::Manip::Changes5to6 (GENERAL CHANGES) document for more information.
If you find other instances where it is necessary to modify your script, please email me so that I can add that information to this
document.
BUGS AND QUESTIONS
Please refer to the Date::Manip::Problems documentation for information on submitting bug reports or questions to the author.
SEE ALSO
Date::Manip - main module documentation
LICENSE
This script is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
AUTHOR
Sullivan Beck (sbeck@cpan.org)
perl v5.14.2 2012-06-02 Date::Manip::Migration5to6(3pm)