#!/usr/bin/perl # # Mailman # $ARGV[0] || die "\n\tUsage: rp FILENAME\n\n"; open (INF, "< $ARGV[0]") || die "\n\tFile does not exist.\n\n"; %mesi=( 'Jan' => ' 01 ', 'Feb' => ' 02 ', 'Mar' => ' 03 ', 'Apr' => ' 04 ', 'May' => ' 05 ', 'Jun' => ' 06 ', 'Jul' => ' 07 ', 'Aug' => ' 08 ', 'Sep' => ' 09 ', 'Oct' => ' 10 ', 'Nov' => ' 11 ', 'Dec' => ' 12 ' ); %nomi=( 'elenaleonardi' => 'ele', 'lellobove' => 'cte', 'dark.prg' => 'mazzini', 'robertopar' => 'parolisi', 'meloinfo' => 'melo', 'massimogab' => 'max', 'simofiore' => 'simone', 'mpagnucci'=> 'pagnucci', 'zeromega'=> 'pagnucci', 'melojunior'=> 'melo', 'mmelillo'=> 'melo', 'marcomelillo'=> 'melo', 'matteobagn'=> 'matteo', 'uncoucou@fastmail.fm' => 'lorena', 'zappagalattica' => 'zappa', 'gavrilus' => 'zappa', 'carloalbertodue' => 'carlone', 'bugman996' => 'bug', 'michel' => 'ziobudda', 'Bagnoli' => 'matteo', 'salciaiola@infinito.it' => 'stegualerci', ); while () { if (/From\ \;/ || /From\&\#160\;/ || /From /) { s/.*From\ /From/; s/.*From\&\#160\;/From/; s/.*From /From/; s/\ / /g; s/PM.*/PM\n/g; s/AM.*/AM\n/g; s/<[^>]+>/ /g; s/\"/\"/g; s/Date.+,//; s/<\;/\/; s/From\s+//; s/\s+/ /g; /, .*2003/; s/, //; s/200/0/; s/ (\d) /0$1 /; s/ ([A-Z][a-z][a-z]) /$mesi{$1}/; s/(\d\d) (\d\d) (\d\d)/$3$2$1/; s/\".+\"//; s/[\<\>]//g; s/(\d\d\d\d\d\d).+/$1\.html/; s/\s+//g; s/\"//g; print "Original: "; print; print "\n"; $neunam=$_; s/\d+.html//; if (exists $nomi{$_}) { $corr=$nomi{$_}; $old=$_; $_=$neunam; s/$old/$corr/; $neunam=$_; } print "Renamed as: "; print $neunam; print "\n"; last } } close (INF); rename $ARGV[0], $neunam if (! -e $neunam); if (-e $neunam) { $_=$neunam; s/.html/II.html/; $neunam=$_; rename $ARGV[0], $neunam if (! -e $neunam); } if (-e $neunam) { $_=$neunam; s/II.html/III.html/; $neunam=$_; rename $ARGV[0], $neunam if (! -e $neunam); } if (-e $neunam) { $_=$neunam; s/III.html/IV.html/; $neunam=$_; rename $ARGV[0], $neunam if (! -e $neunam); } if (-e $neunam) { $_=$neunam; s/IV.html/V.html/; $neunam=$_; rename $ARGV[0], $neunam if (! -e $neunam); }