This will do the trick:
(Note that I changed one of your time strings because a day name didn't agree with the other)
Update: You'll still need to wrap into a loop such as what graff did,
but you can throw mine into a sub with two time strings as parameters, and have it return the elapsed time between them.
#!/perl/bin/perl -w
use strict;
use Time::Local;
my %months = (
Jan => 1,
Feb => 2,
Mar => 3,
Apr => 4,
May => 5,
Jun => 6,
Jul => 7,
Aug => 8,
Sep => 9,
Oct => 10,
Nov => 11,
Dec => 12
);
my $beginning = 'Fri Oct 26 05:54:09 2007';
my $end = 'Fri Oct 26 06:54:09 2007';
my @b = split(/[:\s]/, $beginning);
my @e = split(/[:\s]/, $end);
my $b = timelocal($b[5], $b[4], $b[3], $b[2], $months{$b[1]}-1, $b[-1]
+);
my $e = timelocal($e[5], $e[4], $e[3], $e[2], $months{$e[1]}-1, $e[-1]
+);
#my @new = localtime($b);
#printf "%04d%02d%02d\n", $new[5]+1900, $new[4]+1, $new[3];
my $elapsed = $e - $b;
print qq($elapsed seconds elapsed between the two events.\n);
__OUTPUT__
3600 seconds elapsed between the two events.
Where do you want *them* to go today?
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.