Hi Team,
We have written a perl script to perform the GMT to MST timestamp conversion.
Input: 2013-12-01T05:23:19.374
Output: need the given timestamp in MT (MST/MDT)
GMT is 7 hrs ahead of MST and 8 hrs ahead of MDT. Since we have hard coded 25200 the given timestamp is always converted to MST. Can someone help us to make it dynamic.. like.. during day light savings, the 8 hrs has to be deducted else 7 hrs.
Thanks
Krishnakanth
We have written a perl script to perform the GMT to MST timestamp conversion.
Input: 2013-12-01T05:23:19.374
Output: need the given timestamp in MT (MST/MDT)
Code:
#!/usr/bin/perl
use strict;
use warnings;
use Time::Local;
#always gmt
#my $tval = '2013-12-01T05:23:19.374';
my ($year,$month,$day,$hour,$min,$sec,$mil) = $ARGV[0] =~ m/^(\d{4})-(\d{1,2})-(\d{1,2})T(\d{1,2}):(\d{1,2}):(\d{1,2}).(\d{3})$/;
print "$year-$month-$day $hour:$min:$sec\n";
my $seconds = timelocal($sec, $min, $hour, $day, $month-1, $year);
($sec, $min, $hour,$day,$month, $year) = localtime($seconds-25200);
printf "%04d-%02d-%02d %02d:%02d:%02d", $year+1900, $month+1, $day, $hour, $min, $sec;
Thanks
Krishnakanth