#!/usr/bin/perl -w
# surl - sort URLs by their last modification date
use strict;
use LWP::UserAgent;
use HTTP::Request;
use URI::URL qw(url);
my($url, %Date);
my $ua = LWP::UserAgent->new();
while ($url = url(<>)) {
my $ans;
next unless $url->scheme =~ /^(file|https?)$/;
$ans = $ua->request(HTTP::Request->new("HEAD", $url));
if ($ans->is_success) {
$Date{$url} = $ans->last_modified || 0; # unknown
} else {
print STDERR "$url: Error [", $ans->code, "] ", $ans->message, "!\n";
}
}
foreach $url ( sort { $Date{$b} <=> $Date{$a} } keys %Date ) {
if($Date{$url}){
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($Date{$url});
$year+=1900;
print "$mday/$mon/$year\t$url\n";
} else {
print "<NONE SPECIFIED>\t$url\n";
}
}