#!/perl/bin/perl -w use strict; use Time::Local; my $endtime = "17:39:31"; my $starttime = "17:07:53"; my @end = split(":", $endtime); my @start = split(":", $starttime); my $end_epoch = timelocal(reverse(@end), 1,1,2007); my $start_epoch = timelocal(reverse(@start), 1,1,2007); my $elapsed = $end_epoch - $start_epoch; my $hours = int($elapsed / 3600); my $left = $elapsed - $hours * 3600; my $minutes = int($left / 60); my $seconds = $left % 60; printf "%02d:%02d:%02d\n", $hours, $minutes, $seconds; __OUTPUT__ 00:31:38